Ս. Ս. ԱՎԵՏԻՍՅԱՆ, Ս. Վ. ԴԱՆԻԵԼՅԱՆ
ԻՆՖՈՐՄԱՏԻԿԱ
12-րդ դասարան
ՀԱՆՐԱԿՐԹԱԿԱՆ ԱՎԱԳ ԴՊՐՈՑԻ
ԸՆԴՀԱՆՈՒՐ ԵՎ ՀՈՒՄԱՆԻՏԱՐ ՀՈՍՔԵՐԻ ՀԱՄԱՐ
ՀԱՍՏԱՏՎԱԾ Է ՀՀ ԿՐԹՈՒԹՅԱՆ ԵՎ ԳԻՏՈՒԹՅԱՆ
ՆԱԽԱՐԱՐՈՒԹՅԱՆ ԿՈՂՄԻՑ
ԵՐԵՎԱՆ
2012
ՀՏԴ
373.167.1 : 004 (075.3)
ԳՄԴ 73 ց72
Ա 791
Մասնագիտական խմբագիր՝ Ռ. Վ. Աղգաշյան
Ավետիսյան Ս.Ս.
Ա 791
Ինֆորմատիկա:
12-րդ դաս. դասագիրք. հանրակրթական
ավագ դպրոցի ընդհանուր և հումանիտար հոսքերի համար /
Ս. Ս. Ավետիսյան, Ս. Վ. Դանիելան; Մասն. խմբ.՝ Ռ. Աղգաշյան. -
Եր.: Տիգրան Մեծ, 2012. - 128 էջ:
ՀՏԴ 373.167.1 : 004 (075.3)
ԳՄԴ 73 ց72
ISBN 978-99941-0-492-5
© Ավետիսյան Ս., Դանիելան Ս., 2012
© «Տիգրան Մեծ», 2012
3
ՆԵՐԱԾՈՒԹՅՈՒՆ
Ինֆորմատիկայի այս դասագիրքը շարունակելու է հարստացնել համա-
կարգչին առնչվելու ձեր հմտությունները. շարունակելու եք աղուսակային
տվ ալների հետ սկսած ձեր աշխատանքը, ուսուﬓասիրելու եք հենքային
տվ ալների ղեկավարման Microsoft Access համակարգի հնարավորություննե-
րը։
Շարունակելու եք նաև զարգացնել ալգորիթﬓեր կազﬔլու ձեր արդեն
ձեռք բերած հմտությունները. խնդիրների լուծման ալգորիթﬓերը համա-
կարգչով իրականացնելու համար կծանոթանաք ուսուցողական նպատա-
կով ստեղծված և ուսուցման ոլորտում ﬔծ կիրառություն գտած ծրագրա-
վորման Պասկալ լեզվի որոշ հնարավորություններին։
Հուսով ենք` Համացանցային կայքեր ստեղծելու գործընթացը հետա-
քրքիր է ձեզ համար, քանի որ շարունակելու եք ծանոթանալ դրա նոր,
առավել գործուն հնարավորություններին։
Դասագրքում նոր տերﬕնները տպագրված են հիﬓական տեքստից
տարբեր գույնով, իսկ առավել կարևոր և առանցքային հասկացություննե-
րը շրջանակների ﬔջ են առնված։
Դասի հիﬓական նյութին հաջորդող Օգտակար է իմանալ խորագիրը
կրող տեղեկատվությունը շարունակելու է օգնել ձեզ` համակողմանի յու-
րացնելու համապատասխան նյութը։ Դասագրքի Հարցեր և առաջադրա-
նքներ բաժինը կօգնի ձեզ պարզելու, թե որքանով եք հասկացել դասը։
Որոշակի գործնական հմտություններ ձեռք բերելու համար ձեզ կօգնեն
Լաբորատոր աշխատանքները, որոնք մանրամասն ցուցուﬓեր են պարու-
նակում։
4
1. ՏՎՅԱԼՆԵՐԻ ՀԵՆՔԵՐ
§1.1. ՏՎՅԱԼՆԵՐԻ ՀԵՆՔԻ ՍՏԵՂԾՈՒՄ
8-րդ և 9-րդ դասարանների դասընթացից ծանոթ եք տվալների հենքե-
րի ղեկավարման Microsoft Access համակարգի 2003 տարբերակի որոշ հնա-
րավորությունների։ Այժմ փորձենք ուսուﬓասիրել առավել արդի Microsoft
Access 2007 համակարգը։
Համակարգի ﬕջավայր մտնելու համար պետք է մնիկի օգնությամբ
հաջորդաբար իրականացնել հետևյալ քայլերը.
Start Ö All Programs Ö Microsoft Office Ö Microsoft Office Access 2007
Այժմ Access-ը սպասում է հետևյալ հրահանգներից որևէ ﬔկին.
գոյություն ունեցող որևէ հենք բացել,
նոր հենք ստեղծել։
Տվալների որևէ հենք բացելու համար անհրաժեշտ է.
z բացված պատուհանի (նկ. 1.1.) աջ մասում տեղակայված Open Recent
Database բաժնում ներառված տվալների հենքերի ցուցակից ընտրել
անհրաժեշտը,
z եթե փնտրված ֆայլը բացված ցուցակում չի ընդգրկված, ապա որո-
նումը շարունակել
կոճակի օգնությամբ։
Նկ. 1.1. Microsoft Access 2007-ի աշխատանքի նախնական պատուհան
5
Տվալների նոր հենք ստեղծելու համար անհրաժեշտ է.
z ընտրել New Blank Database բաժնի Blank Database կոճակը (նկ. 1.1.)
z բացված տիրույթի (նկ. 1.2.) File Name դաշտում նշել ստեղծվող հեն-
քի անվանումը (նկարում բերված օրինակում՝ Database 11)։ Ստեղծվող
ֆայլի պահպանման հասցեն ընտրել կոճակով բացված պատու-
հանում,
z սեղﬔլ Create կոճակը։
Նկ. 1.2. Նոր ֆայլ ստեղծելու տիրույթ
Տվալների հենք կարելի է ստեղծել նաև Template Categories խմբի From
Microsoft Office Online հրամանով (նկ. 1.1.) բացվող շաբլոններից որևէ ﬔկի
օգնությամբ։
Ms Access 2007 համակարգի հիﬓական աշխատանքային պատուհանն
ունի նկ. 1.3.-ում բերված տեսքը։
Ծանոթանանք պատուհանի հիﬓական բաղադրիչներին։
Արագ հասանելիության վահանակը նախատեսված է առավել հաճախ
կիրառվող հրամանների կոճակների համար։
Հրամանային ներդիրների տողը 5 ներդիր է պարունակում։ Նկ. 1.3-ում
բացված է Home ներդիրը։ Ինչպես երևում է նկարից՝ այն յոթ խումբ է ընդ-
գրկում. View, Clipboard, Font, Rich Text, Records, Sort & Filter, Find, որոնցից յուրա-
քանչյուրն իր հերթին այլ հրամանների կոճակներ է ներառում։
Վերնագրի տողում արտածվում է տվալ պահին խմբագրիչի աշխա-
տանքային տիրույթում առկա փաստաթղթի անվանումը (նկ. 1.3.-ում՝ Data-
base5
Վիճակի տողում ինֆորմացիա է արտածվում տվալների թողարկված
հենքի և կատարվող գործողությունների մասին։
6
Ակտիվացված օբյեկտների ներդիրների տիրույթ
Արագ հասանելիության վահանակ
Հրամանային ներդիրների տող
Հրամանների կատարման կոճակներ
Office կոճակ
Վերնագրի տող
Դիտման ռեժիﬓերի
Վիճակի տող
Անցուﬓերի տիրույթ
կոճակներ
Նկ. 1.3. Microsoft Access 2007 համակարգի պատուհան
Անցուﬓերի տիրույթում արտածվում են տվալների հենքի օբյեկտները,
ինչը հնարավորություն է տալիս ընտրել դրանցից անհրաժեշտը։
Ակտիվացված օբյեկտների ներդիրների տիրույթը ներառում է տվալնե-
րի հենքի ակտիվացված օբյեկտների անվանուﬓերը, ինչը ևս հնարավո-
րություն է տալիս ընտրելու դրանցից անհրաժեշտը։
Office կոճակով բացվում է ֆայլերի հետ առավել հաճախ կիրառվող
հրամանների ﬔնյուն (նկ. 1.4.), որի բաղադրիչներին կծանոթանաք հետա-
գայում։
7
Նկ. 1.4. Office կոճակի պատուհան
Ms Access-ի աշխատանքը կարելի է ավարտել համակարգի հիﬓական
պատուհանի փակման կոճակով։
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Access 2007-ով ստեղծված ֆայլերն ունեն .mdbx ընդլայնումը։
¾ Տվալների հենքում հայատառ ինֆորմացիա ներմուծելու նպատա-
կով անհրաժեշտ է ընտրել հայկական տառատեսակի Unicode տար-
բերակը։
1. Microsoft Access համակարգի հիﬓական աշխատանքային
պատուհանի ի՞նչ հիﬓական տիրույթներ գիտեք։
2. Ինչպե՞ս կարելի է համակարգչում առկա որևէ հենք բացել։
3. Ինչպե՞ս են տվալների նոր հենք ստեղծում։
8
§1.2. ԱՂՅՈՒՍԱԿՆԵՐԻ ՍՏԵՂԾՈՒՄ
ԵՎ ԽՄԲԱԳՐՈՒՄ
Աղուսակը տվալների հենքի առաջին և հիﬓական օբյեկտն է։ Տվալնե-
րի հենքը կարող է ﬔկ կամ ﬕ քանի աղուսակ ունենալ։
Աղ ուսակ ստեղծելու համար պետք է ընտրել Create (ստեղծել) ներդիրի
Tables խմբի հետևյալ չորս տարրերից անհրաժեշտը (նկ. 1.5.).
Table - աղուսակի ստեղծում՝ տվալների ներմուծմամբ,
Table Templates - աղուսակի ստեղծում՝ շաբլոնների օգնությամբ,
SharePoint Lists - աղուսակի ստեղծում՝ SharePoint-ի օգնությամբ,
Table Design - աղուսակի ստեղծում՝ կոնստրուկտորի օգնությամբ։
Նկ. 1.5. Աղուսակ ստեղծելու ﬕջոցներ
Տվալների ներմուծմամբ աղուսակ ստեղծելու տարբերակն ընտրելիս հա-
մակարգը թույլատրում է տվալներն աղուսակ ներմուծել այնպես, ինչպես
ձեզ ծանոթ Excel էլեկտրոնային աղուսակում։
Շաբլոնների օգնությամբ աղուսակ ստեղծելու տարբերակն ընտրելու դեպ-
քում հնարավորություն եք ստանում տիպային աղուսակ ձևավորել. այս-
տեղ կարևորն աղուսակի նմուշը ճիշտ ընտրելն է։
SharePoint-ի օգնությամբ աղուսակ կարելի է ստեղծել, երբ Microsoft Office Share-
Point Services կայքից օգտվելու հնարավորություն կա։ Այս դեպքում կարելի
է SharePoint ցուցակը Access-ի աղուսակ ներմուծել։
Աղուսակներ ստեղծելու գործընթացին առավել հանգամանորեն ծանո-
թանալու նպատակով ուսուﬓասիրենք այդ նպատակի համար նախատես-
ված տարրերից վերջինը՝ կոնստրուկտորի օգնությամբ աղուսակ ստեղ-
ծելը։ Կոնստրուկտորի պատուհանը (նկ. 1.6.) աղուսակի կառուցվածք
ստեղծելու և խմբագրելու բլանկ է ներկայացնում։ Այն բաղկացած է երեք
սյուներից՝ Field Name (դաշտի անվանում), Data Type (տվալների տիպ) և
Description (նկարագրություն)։ Նախ անհրաժեշտ է Field Name սյան ﬔջ լրաց-
նել անհրաժեշտ դաշտերի անվանուﬓերը, իսկ Data Type սյան ﬔջ ընտ-
րել դրանց տիպերը, այսինքն՝ այդ դաշտերում պահպանվելիք տվալների
ձևաչափերը։ Անհրաժեշտության դեպքում Description սյան ﬔջ կարելի է յու-
րաքանչյուր դաշտին առնչվող ﬔկնաբանություններ տալ։
9
Դաշտերի տվալների
Դաշտի տիպն
տիպերի ցուցակ
ընտրելու կոճակ
Մեկնաբանու-
Դաշտերի ցուցակ
թյունների դաշտ
Հատկությունների
խմբագրման վահանակ
Նկ. 1.6. Աղուսակի կառուցվածքը նախագծելու պատուհան
Դաշտի տվալների տիպն ընտրելու համար անհրաժեշտ է.
z մնիկի ցուցիչը տեղադրել դաշտի աջ մասում տեղակայված սլաքի
վրա ու սեղﬔլ ձախ սեղմակը,
z առաջարկվող ցուցակից (նկ. 1.7.) ընտրել անհրաժեշտ տիպը։
Դաշտի տվալների որոշ տիպերի ﬔնք ծանոթ ենք էլեկտրոնային աղու-
սակներից։ Տվալների հենքերը, որպես կանոն, հնարավորություն են տա-
լիս աշխատել տվալների առավել ﬔծաքանակ տիպերի հետ։ Ծանոթա-
նանք Access-ում կիրառվող հետևյալ տիպերին.
Text (տեքստային) - տվալների այս տիպն ունեցող դաշտը կարող է
ﬕնչև 255 պայմանանշան պարունակող տեքստ ներառել։
Memo (տեքստային) - տվալների այս տիպն ունեցող դաշտը կարող է
ﬕնչև 65535 պայմանանշան պարունակող տեքստ ներառել։
Number (թվային) - կարող է ցանկացած թիվ պարունակել։
Date/Time (ամսաթիվ/ժամանակ) - կարող է տվալներ պարունակել ամ-
սաթվի և ընթացիկ ժամանակի վերաբերյալ։
Currency (դրամական) - կարող է թիվ պարունակել, որի ամբողջ մա-
սը հնարավորություն ունի ﬕնչև 15, իսկ կոտորակային մասը՝ ﬕնչև 4 նիշ
պահել։
10
AutoNumber (հաշվիչ) - կարող է բնական թիվ պարունակել, որի արժեքը
յուրաքանչյուր հաջորդ գրառմանն անցնելիս ավտոմատ ﬔկով ավելաց-
վում է։
Yes/No (տրամաբանական) - կարող է պարունակել Այո կամ Ոչ արժեք-
ներից որևէ ﬔկը։
Յուրաքանչյուր դաշտ բնութագրվում է հատկանշական պարաﬔտրե-
րով, որոնք սահմանում են դաշտում պահպանվող տվալների մշակման
ու պահպանման ﬔթոդները։ Այս պարաﬔտրերը տեղակայվում են հատ-
կությունների խմբագրման վահանակում (նկ. 1.6.)։ Նման պարաﬔտրերի
ﬕջոցով կարելի է սահմանել տեքստային դաշտի երկարությունը, թվային
տվալների տիպը (ամբողջ կամ իրական) և այլն։
Աղ ուսակի կառուցվածքը սահմանելուց հետո պատուհանի ղեկավար-
ման
սեղմակով պետք է փակել Աղուսակի կառուցվածքի նախագծում պա-
տուհանը։ Սրան ի պատասխան՝ համակարգը աղուսակի պահպանման
վերաբերյալ երկխոսական պատուհան է բացում (նկ. 1.8.)։
Նկ. 1.8. Երկխոսական պատուհան՝ աղուսակը
Նկ. 1.7. Դաշտի տվալների
տիպերի ցուցակ
պահպանելու վերաբերյալ
Բերված պատուհանից կարելի է հրաժարվել Cancel-ի ընտրմամբ։ Եթե
ընտրվի No կոճակը, ապա ստեղծված աղուսակը չի պահպանվի, իսկ Yes
ընտրելիս ﬕ նոր պատուհան կբացվի (նկ. 1.9.), որի Table Name դաշտ պետք
է ներմուծել ստեղծվող աղուսակի անվանուﬓ ու սեղﬔլ OK կոճակը։ Եթե
համակարգի կողﬕց առաջարկվող անվանումը (օրինակ՝ Table1) բավարար
է, ապա պետք է սեղﬔլ OK կոճակը՝ առանց նոր անվանում ներմուծելու։
Ստեղծված աղուսակը բացելու համար անհրաժեշտ է մնիկի ցուցիչը
տեղադրել անցուﬓերի տիրույթում արտածված աղուսակի անվան վրա
(նկ. 1.3.) ու մնիկի ձախ սեղմակի կրկնակի սեղմում կատարել։
Նոր ստեղծված աղուսակը գրառուﬓեր չունի. այն պարունակում է ﬕ-
այն աղուսակը բնութագրող սյուների անվանուﬓերը (նկ. 1.10.)։
11
Նկ. 1.9. Աղուսակի
անվանումը ներմուծելու
Նկ. 1.10. Նոր աղուսակի օրինակ
պատուհան
Աղ ուսակում տվալների ներմուծուﬓ իրականացվում է սովորական
կարգով։ Ներմուծման համար ցուցիչը մնիկի կամ {, }, |, ~ ստեղների
օգնությամբ տեղադրվում է անհրաժեշտ բջիջում։ Ընդարձակ աղուսակնե-
րի հետ աշխատելիս կարելի է օգտվել պատուհանի ստորին մասում տեղա-
դրված անցման կոճակների վահանակի գործիքներից։
Տվալների ներմուծուﬓ ավարտելիս արդյունքներն ավտոմատ պահ-
պանվում են։ Եթե աշխատելու ընթացքում աղուսակի պարաﬔտրերից թե-
կուզ ﬔկը (օրինակ՝ դաշտի լայնությունը) փոփոխման է ենթարկվել, ապա
համակարգն այդ փոփոխությունները պահպանելու վերաբերյալ լրացու-
ցիչ հարցադրում կանի։
Աղուսակի կառուցվածքը խմբագրելու համար անհրաժեշտ է.
z Home ներդիրի Views խմբի
գործիքի ստորին մասի d սլաքով բաց-
ված վահանակից ընտրել
(Design View) գործիքը,
z բացված պատուհանում կատարել անհրաժեշտ խմբագրումը։
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Նոր ստեղծվող աղուսակի ﬔջ AccessID անունով դաշտ է ստեղ-
ծում, որը AutoNumber տիպի է (աղուսակում նոր գրառում ավելացնե-
լիս այս դաշտի պարունակությունը ﬔկով ավելացվում է)։
¾ Դաշտի չափերը փոխելու համար անհրաժեշտ է մնիկի ցուցիչը
տեղադրել դաշտի աջ կամ ձախ սահմանի վրա և այն խաչի տեսք
ստանալիս` մնիկի ձախ սեղմակով անհրաժեշտ փոփոխություններն
իրականացնել։
¾ Դաշտի չափերն ավտոմատ կարգավորելու համար անհրաժեշտ է
մնիկի ցուցիչը տեղադրել դաշտի աջ կամ ձախ սահմանի վրա և
այն խաչի տեսք ստանալիս` մնիկի ձախ սեղմակի կրկնակի սեղմում
կատարել։
12
1. Access-ում կիրառվող դաշտերի ինչպիսի՞ տիպեր գիտեք։
2. Ինչո՞վ են իրարից տարբերվում Text և Memo տիպերը։
3. Կարելի՞ է արդյոք խմբագրել արդեն ստեղծված աղուսա-
կը։
Լաբորատոր աշխատանք
1.1
Աղուսակի ստեղծում
1. Հաջորդաբար կատարելով Start, All Programs, Microsoft Office, Microsoft Of-
fice Access 2007 քայլերը՝ Access 2007-ի ﬕջավայր մտեք։
2. Բացված պատուհանում ընտրեք New Blank Database բաժնի Blank Data-
base կոճակը։
3. Ակտիվացած տիրույթի File Name դաշտում ներմուծեք ստեղծվող
տվալների հենքի անվանումը՝ Lab_1_1_*, որտեղ *–ի փոխարեն պետք
է ներմուծել աշակերտի դասամատյանի համարը։
4.
կոճակով բացված պատուհանում ընտրեք տվալ դասարանին
հատկացված թղթապանակը։
5. Սեղﬔք Create կոճակը։
6. Home ներդիրի Views խմբի View կոճակի ստորին մասի d սլաքով բեր-
ված ցուցակից ընտրեք Design View հրամանը։
7. Ընդունեք աղուսակը պահպանելու համար առաջարկվող Table1 ան-
վանուﬓ ու սեղﬔք OK կոճակը։
8. Ընտրեք Arial Armenian Unicode տառատեսակը։
9. Կոնստրուկտորի պատուհանի առաջին տողի Field Name դաշտում
ներմուծեք Ազգանուն բառը և նկատեք, որ այդ տողի Data Type դաշ-
տում ավտոմատ ընտրվեց Text տիպը։
10. Երկրորդ տողի Field Name դաշտում ներմուծեք Անուն բառն ու Data Type
դաշտում ընտրեք Text տիպը։
11. Երրորդ տողի Field Name դաշտում ներմուծեք Մաթեմատիկա բառը։
13
12.
Մկնիկի ցուցիչը տեղադրեք այդ տողի Data Type դաշտի աջ մասի
սլաքի վրա, սեղﬔք ձախ սեղմակն ու առաջարկվող ցուցակից
ընտրեք Number տիպը։
13.
Չորրորդ տողի Field Name դաշտում ներմուծեք Ֆիզիկա բառը։
14.
Մկնիկի ցուցիչը տեղադրեք այդ տողի Data Type դաշտի աջ մասի
սլաքի վրա, սեղﬔք ձախ սեղմակն ու առաջարկվող ցուցակից
ընտրեք Number տիպը։
15.
Հինգերորդ տողի Field Name դաշտում ներմուծեք Ինֆորմատիկա բա-
ռը։
16.
Մկնիկի ցուցիչը տեղադրեք այդ տողի Data Type դաշտի աջ մասի
սլաքի վրա, սեղﬔք ձախ սեղմակն ու առաջարկվող ցուցակից ընտ-
րեք Number տիպը։
17.
Աղուսակի կառուցվածքը ստեղծելուց հետո պատուհանի ղեկավար-
ման սեղմակով փակեք պատուհանը։
18.
Աղուսակի պահպանման մասին տրված հարցմանը պատասխանեք
Yes։
19.
Համաձայնեք առաջարկվող Table1 անվանմանն ու OK կոճակը սեղﬔ-
լով համոզվեք, որ պատուհանի ձախ վահանակին Table1 անվանումով
աղ ուսակ առաջացավ։
20. Մկնիկի ձախ սեղմակի կրկնակի սեղմումով բացեք Table1 աղուսակը։
21. Ստորև բերված աղուսակի օրինակով Ազգանուն և Անուն դաշտերում
դասարանի 5 աշակերտների անուն, ազգանուն ներմուծեք, իսկ Ին-
ֆորմատիկա, Մաթեմատիկա և Ֆիզիկա դաշտերում ներմուծեք տվալ
առարկաներից նրանց կիսամյակային գնահատականները.
22. Սեղﬔք պատուհանի ղեկավարման սեղմակն ու աղուսակի պահ-
պանմանն ուղղված հարցմանը պատասխանեք Yes։
23. Ավարտեք աշխատանքը հենքերի ղեկավարման Access համակարգի
հետ՝ օգտվելով համակարգի հիﬓական աշխատանքային պատուհա-
նի փակման սեղմակից։
14
§1.3. ԱՇԽԱՏԱՆՔ ԱՂՅՈՒՍԱԿԻ ԴԱՇՏԵՐԻ
ԵՎ ԳՐԱՌՈՒՄՆԵՐԻ ՀԵՏ
Այժմ առավել հանգամանորեն ծանոթանանք աղուսակի բաղադրիչնե-
րի հետ կապված աշխատանքին։ Նախ սովորենք նշել աղուսակի բաղադ-
րիչները կազմող դաշտերն ու գրառուﬓերը։
Աղուսակի որևէ դաշտ նշելու համար (նկ. 1.11.) անհրաժեշտ է մնիկի
ցուցիչը տեղադրել համապատասխան դաշտի անվան վրա և, երբ ցուցիչը
կձևափոխվի սլաքի, սեղﬔլ ձախ սեղմակը։
Աղ ուսակի որևէ գրառում նշելու համար (նկ. 1.12.) անհրաժեշտ է մնիկի
ցուցիչը տեղադրել գրառման ձախ եզրային վանդակի վրա և, երբ ցուցիչը
կձևափոխվի սլաքի, սեղﬔլ ձախ սեղմակը։
Նկ. 1.11. Նշված դաշտով աղուսակ
Նկ. 1.12. Նշված գրառումով աղուսակ
Աղ ուսակի նշված գրառումը կամ դաշտը կարելի է պատճենել, տեղա-
փոխել, հեռացնել Home ներդիրի Clipboard խմբի գործիքների վահանակի
,
և
գործիքների օգնությամբ, ինչպես նաև նշված դաշ-
տի կամ գրառման վրա մնիկի աջ սեղմակով բացված ենթատեքստային
ﬔնյուի համապատասխան հրամաններով։
Աղ ուսակի դաշտն անվանափոխելու համար անհրաժեշտ է.
z մնիկի ցուցիչը տեղադրել դաշտի անվան վրա և սեղﬔլ աջ սեղմա-
կը,
z բացված ենթատեքստային ﬔնյուից (նկ. 1.13.) ընտրել Rename Column
հրամանը,
z նախկին անվան փոխարեն ներմուծել նոր անվանումը։
Աղուսակում նոր դաշտ ավելացնելու համար անհրաժեշտ է.
z մնիկի ցուցիչը տեղադրել այն դաշտի անվան վրա, որին պետք է
նախորդի ավելացվող դաշտն ու սեղﬔլ աջ սեղմակը,
z բացված ենթատեքստային ﬔնյուից (նկ. 1.13.) ընտրել Insert Column
հրամանը։
15
Աղուսակից դաշտ հեռացնելու համար անհրաժեշտ է.
z մնիկի ցուցիչը տեղադրել հեռացման ենթակա դաշտի անվան վրա
ու սեղﬔլ աջ սեղմակը,
z բացված ենթատեքստային ﬔնյուից (նկ. 1.13.) ընտրել Delete Column
հրամանը։
Աղ ուսակի դաշտը թաքցնելու համար անհրաժեշտ է.
z մնիկի ցուցիչը տեղադրել տվալ դաշտի անվան վրա ու սեղﬔլ աջ
սեղմակը,
z բացված ենթատեքստային ﬔնյուից (նկ. 1.13.) ընտրել Hide Columns
հրամանը։
Աղուսակի թաքցված դաշտը տեսանելի դարձնելու համար անհրաժեշտ է.
z մնիկի ցուցիչը տեղադրել դաշտերից որևէ ﬔկի անվան վրա ու սեղ-
ﬔլ աջ սեղմակը,
z բացված ենթատեքստային ﬔնյուից (նկ. 1.13.) ընտրել Unhide Columns
հրամանը,
z բերված պատուհանում (նկ. 1.14.) ընտրել անհրաժեշտ դաշտն ու սեղ-
ﬔլ Close կոճակը։
Աղուսակի թվային տիպի դաշտի պարունակությունն ըստ աճման կամ
նվազման կարգավորելու համար անհրաժեշտ է.
z մնիկի ցուցիչը տեղադրել տվալ դաշտի որևէ բջիջի վրա ու սեղﬔլ
աջ սեղմակը,
z բացված ենթատեքստային ﬔնյուից ընտրել
(Sort A to Z) հրամանն
ըստ աճման և
(Sort Z to A) հրամանն ըստ նվազման կարգավորելու
նպատակով։
Նկ. 1.13. Դաշտին առնչվող
Նկ. 1.14. Թաքցված դաշտերից
ենթատեքստային ﬔնյու
անհրաժեշտը ցուցադրելու վահանակ
16
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Դաշտի հետ գործողություններ կարելի է կատարել նաև Datasheet
ներդիրի Fields&Columns խմբի համապատասխան գործիքներով։
1. Ինչպե՞ս են աղուսակում նոր դաշտ ավելացնում։
2. Ինչպե՞ս են աղուսակում որևէ դաշտ թաքցնում։
3. Ինչպե՞ս կարելի է թաքցված դաշտը նորից տեսանելի դարձ-
նել։
§1.4. ԱՂՅՈՒՍԱԿՈՒՄ ԻՆՖՈՐՄԱՑԻԱՅԻ
ՈՐՈՆՈՒՄՆ ՈՒ ՓՈԽԱՐԻՆՈՒՄԸ
Տվալների հենքում աﬔնահաճախ կիրառվող գործողություններից ﬔ-
կը ինֆորմացիայի որոնուﬓ է։
Տվալների հենքում անհրաժեշտ ինֆորմացիա որոնելու համար պետք է.
z կուրսորը տեղադրել փաստաթղթի այն մասում, որտեղից սկսած
պետք է որոնուﬓ իրականացնել,
z ընտրել Home ներդիրի Find խմբի
(Find) կոճակը,
z բացված պատուհանում ընտրել Find ներդիրը (նկ. 1.15. ա),
z Look In դաշտում ընտրել աղուսակի անվանումը, եթե որոնումը պետք
է իրականացնել ողջ աղուսակում կամ ընտրել աղուսակի ﬕայն այն
դաշտի անվանումը, որտեղ պետք է իրականացվի համապատաս-
խան որոնումը:
Եթե որոնուﬓ իրականացվելու է դաշտում, ապա Match դաշտում պետք
է ընտրել հետևյալ տարբերակներից անհրաժեշտը.
Any Part of Field - որոնուﬓ իրականացնել դաշտի որևէ մասում,
Whole Field - որոնուﬓ իրականացնել ամբողջ դաշտում,
Start of Field - որոնուﬓ իրականացնել նշված դաշտի սկզբից։
Եթե պետք է որոնել գրառուﬓերի ﬔջ, ապա Search դաշտում անհրա-
ժեշտ է ընտրել հետևյալ տարբերակներից ﬔկը.
Up - որոնել աղուսակի ընթացիկ գրառուﬕց վերև ընկած մասում,
Down - որոնել աղուսակի ընթացիկ գրառուﬕց ներքև ընկած մա-
սում,
All - որոնել բոլոր գրառուﬓերում։
17
Այժմ որոնման գործընթացը սկսելու համար ﬓում է տալ փնտրվող ին-
ֆորմացիան, որը պետք է ներմուծել Find What դաշտ և սեղﬔլ Find Next կո-
ճակը (այսպիսով, համակարգչին «ստիպում» ենք հաջորդաբար ցույց տալ
գտածը)։
Եթե որոնվածն արդեն գտնվել է կամ որևէ այլ պատճառով հետագա
որոնումը նպատակահարմար չէ, ապա որոնման գործընթացն ընդհատելու
համար պետք է սեղﬔլ Cancel կոճակը։
Հենքային տվալների ղեկավարման Microsoft Access համակարգում ին-
ֆորմացիա որոնելու և այն այլ ինֆորմացիայով փոխարինելու համար ան-
հրաժեշտ է.
z կուրսորը տեղադրել փաստաթղթի այն մասում, որտեղից սկսած ան-
հրաժեշտ է իրականացնել որոնման ու փոխարինման գործընթացը,
z ընտրել Home ներդիրի Find խմբի
(Replace) հրամանը,
z բացված պատուհանում ընտրել Replace ներդիրը (նկ. 1.15. բ),
z բացված պատուհանի Find What դաշտում ներմուծել որոնվող ինֆոր-
մացիան, իսկ Replace With դաշտում այն ինֆորմացիան, որը պետք է
փոխարինի հնին,
z ﬓացած դաշտերը լրացնել այնպես, ինչպես վերը նկարագրված ին-
ֆորմացիա որոնելու գործընթացում,
z եթե որոնվող ինֆորմացիան աղուսակում աﬔնուրեք պետք է փո-
խարինվի նորով, ապա անհրաժեշտ է սեղﬔլ Replace All կոճակը, իսկ
եթե անհրաժեշտ է փոխարինել ﬕայն հերթական հանդիպածը, ապա՝
Replace կոճակը։
Անհրաժեշտության դեպքում որոնման և փոխարինման գործընթացը
կարելի է ընդհատել Cancel կոճակով։
ա)
բ)
Նկ. 1.15. Որոնման և փոխարինման պատուհան
ա) Find ներդիր, բ) Replace ներդիր
18
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Աղուսակում ինֆորմացիա կարելի է որոնել նաև՝ օգտվելով դաշտին
առնչվող ենթատեքստային ﬔնյուի (նկ. 1.13.) համապատասխան հրա-
մանից։
1. Ինչպե՞ս են աղուսակի դաշտում տվալները կարգավորում
աճման կարգով։
2. Ինչպե՞ս կարելի է որոնում իրականացնել աղուսակի որևէ
ընթացիկ գրառուﬕց ներքև տեղաբաշխված գրառուﬓերի
ﬔջ։
3. Ինչպե՞ս պետք է վարվել, եթե աղուսակի ﬔջ աﬔնուրեք ﬕ որոշա-
կի ինֆորմացիա անհրաժեշտ է ﬔկ այլով փոխարինել։
Լաբորատոր աշխատանք
1.2
Աշխատանք աղուսակների հետ
Աշխատանքի ընթացքում Հայաստանի պետական ճարտարագիտական
համալսարանի (Պոլիտեխնիկ) 2012 թվականի ընդունելության մասին ստո-
րև բերված ինֆորմացիան նախ կներկայացնենք աղուսակի տեսքով.
Վճարովի
Անվճար տե-
Շիֆր
Ֆակուլտետ
տեղերի
ղերի քանակը
քանակը
003071
Քիﬕական տեխնոլոգիաների և բնապահպանա-
15
90
կան ճարտարագիտության
003073
Էլեկտրատեխնիկական
18
55
003072
Էներգետիկական
37
144
003075
Մեքենաշինության
17
55
003077
Ռադիոտեխնիկայի և կապի համակարգերի
24
95
003078
Կիբեռնետիկայի
45
130
003080
Քոմփյութերային համակարգերի և ինֆորմատիկայի
44
203
003079
Կիրառական մաթեմատիկայի
6
24
003081
Ընդերքաբանության և ﬔտալուրգիայի
22
84
003076
Տրանսպորտային համակարգերի
12
95
003074
Մեխանիկաﬔքենագիտական
9
62
Ներմուծված տվալների հենքում այնուհետև պետք է.
19
ա) Ֆակուլտետ դաշտից հետո ավելացնել Ընդհանուր տեղերի քանակը
դաշտը, որը պարունակելու է ֆակուլտետի Անվճար տեղերի քանա-
կը և Վճարովի տեղերի քանակը դաշտերի գումարային ﬕավորնե-
րը,
բ) թաքցնել Անվճար տեղերի քանակը և Վճարովի տեղերի քանակը
դաշտերը,
գ) ընդհանուր տեղերի քանակը դաշտը կարգավորել ըստ նվազման,
դ) թաքցված դաշտերը դարձնել տեսանելի,
ե) որոնել 003080 շիֆր ունեցող ֆակուլտետը։
Աշխատանքն իրականացնելու համար կատարենք հետևյալ գործողու-
թյունները.
1. Հաջորդաբար կատարելով Start, All Programs, Microsoft Office, Microsoft Of-
fice Access 2007 քայլերը՝ Access 2007-ի ﬕջավայր մտեք։
2. Բացված պատուհանում ընտրեք New Blank Database բաժնի Blank Data-
base կոճակը։
3. Ակտիվացած տիրույթի File Name դաշտում ներմուծեք ստեղծվող
տվ ալների հենքի անվանումը՝ Lab_1_2_*, որտեղ *–ի փոխարեն պետք
է ներմուծել աշակերտի դասամատյանի համարը։
4.
կոճակով բացված պատուհանում ընտրեք տվալ դասարանին
հատկացված թղթապանակը։
5. Սեղﬔք Create կոճակը։
6. Home ներդիրի Views խմբի View կոճակի ստորին մասի d սլաքով բեր-
ված ցուցակից ընտրեք
(Design View) հրամանը։
7. Ընդունեք աղուսակի առաջարկվող Table1 անվանուﬓ ու սեղﬔք OK
կոճակը։
8. Ընտրեք Arial Armenian Unicode տառատեսակը։
9. Կոնստրուկտորի պատուհանի առաջին տողի Field Name դաշտ ներ-
մուծեք Շիֆր բառը։ Մկնիկի ցուցիչը տեղադրեք այդ տողի Data Type
դաշտի աջ մասի սլաքի վրա, սեղﬔք ձախ սեղմակն ու առաջարկ-
վող ցուցակից ընտրեք Number տիպը։
10. Երկրորդ տողի Field Name դաշտ ներմուծեք Ֆակուլտետ բառը, իսկ Data
Type դաշտում ընտրեք Text տիպը։
20
11.
Երրորդ տողի Field Name դաշտ ներմուծեք Անվճար տեղերի քանակը
տեքստը։
12.
Մկնիկի ցուցիչը տեղադրեք այդ տողի Data Type դաշտի աջ մասի
սլաքի վրա, սեղﬔք ձախ սեղմակն ու առաջարկվող ցուցակից
ընտրեք Number տիպը։
13.
Չորրորդ տողի Field Name դաշտում ներմուծեք Վճարովի տեղերի քանա-
կը տեքստը։ Մկնիկի ցուցիչը տեղադրեք այդ տողի Data Type դաշտի
աջ մասի սլաքի վրա, սեղﬔք ձախ սեղմակն ու առաջարկվող ցու-
ցակից ընտրեք Number տիպը։
14.
Աղ ուսակի կառուցվածքը ստեղծելուց հետո պատուհանի ղեկավար-
ման սեղմակով փակեք պատուհանը։
15.
Աղ ուսակի պահպանման մասին տրված հարցմանը պատասխանեք
Yes։
16.
Համաձայնեք առաջարկվող Table1 անվանմանն ու OK կոճակը սեղﬔ-
լով համոզվեք, որ պատուհանի անցուﬓերի տիրույթում Table1 անվա-
նումով աղուսակ առաջացավ։
17.
Մկնիկի ձախ սեղմակի կրկնակի սեղմումով բացեք Table1 աղուսակը։
18.
Ստեղծված աղուսակի բոլոր դաշտերը լրացրեք ըստ վերը բերված
աղ ուսակի։
19.
Մկնիկի ցուցիչը տեղադրեք Անվճար տեղերի քանակը դաշտի անվան
վրա ու սեղﬔք աջ սեղմակը։ Բացված ենթատեքստային ﬔնյուի Insert
Column հրամանով այդ դաշտից առաջ նոր դաշտ ստեղծեք։
20. Home ներդիրի Views խմբի View կոճակի ստորին մասի d սլաքով բեր-
ված ցուցակից ընտրեք
(Design View) հրամանն ու բացված պա-
տուհանում ավելացված դաշտի Field1 անվանման փոխարեն ներմու-
ծեք Ընդհանուր տեղերի քանակը անվանումը, իսկ Data Type դաշտում
ընտրեք Number տիպը։
21. Home ներդիրի Views խմբի View կոճակի ստորին մասի d սլաքով բեր-
ված ցուցակից ընտրեք
(Datasheet View) հրամանն ու աղուսակում
կատարված փոփոխությունները պահպանելու վերաբերյալ հարցմա-
նը պատասխանեք՝ սեղﬔլով Yes կոճակը։
22. Ընդհանուր տեղերի քանակը դաշտում ներմուծեք Անվճար տեղերի քանա-
կը և Վճարովի տեղերի քանակը դաշտերի գումարային ﬕավորները։
21
23. Մկնիկի ցուցիչով նշեք Անվճար տեղերի քանակը և Վճարովի տեղերի քա-
նակը դաշտերն ու մնիկի աջ սեղմակով բացված ենթատեքստային
ﬔնյուի Hide Columns հրամանով թաքցրեք դրանք։
24. Մկնիկի ցուցիչը տեղադրեք Ընդհանուր տեղերի քանակը դաշտի ան-
վան վրա ու մնիկի աջ սեղմակով բացված ենթատեքստային ﬔնյուի
գործիքի օգնությամբ այդ դաշտի պարունակությունը կարգավո-
րեք ըստ նվազման։
25. Մկնիկի ցուցիչը տեղադրեք աղուսակի դաշտերից որևէ ﬔկի անվան
վրա ու աջ սեղմակով բացված ենթատեքստային ﬔնյուից ընտրեք
Unhide Columns հրամանը։
26. Բացված ցուցակում թաքցված Անվճար տեղերի քանակը և Վճարովի տե-
ղերի քանակը դաշտերը տեսանելի դարձնելու նպատակով համանուն
դաշտերի դիմաց նշում կատարեք ու սեղﬔք Close կոճակը։
27. Որոնեք աղուսակում առկա 003080 շիֆրը։ Այդ նպատակով.
ա) ընտրեք Home ներդիրի Find խմբի
(Find) հրամանը, ապա Find
ներդիր պատուհանը,
բ) ողջ աղուսակի ﬔջ որոնուﬓ իրականացնելու համար Look In դաշ-
տում ընտրեք աղուսակի Table1 անվանումը,
գ) Find What դաշտում ներմուծեք 003080 թիﬖ ու սեղﬔք Find Next կո-
ճակը։
28. Ընտրեք պատուհանի ղեկավարման սեղմակն ու աղուսակի պահ-
պանման մասին տրված հարցմանը պատասխանեք Yes։
29. Ավարտեք աշխատանքը հենքերի ղեկավարման Access համակարգի
հետ՝ օգտվելով համակարգի հիﬓական աշխատանքային պատուհա-
նի փակման
սեղմակից։
22
§1.5. ՏՎՅԱԼՆԵՐԻ ԲԱԶՄԱՂՅՈՒՍԱԿ ՀԵՆՔԵՐ
Դիտարկենք հետևյալ օրինակը։ Դիցուք, անհրաժեշտ է մարզային օլիմ-
պիադայի արդյունքների պահպանման տվալների հենք ստեղծել (աղու-
սակ 1.1), որտեղ, մրցանակակիրների տվալներից բացի, անհրաժեշտ է
տեղեկություններ պահպանել նաև ժյուրիի նախագահի և յուրաքանչյուր
մասնակցի դպրոցի վերաբերյալ։
Աղուսակ 1.1
Ժյուրիի նա-
Մրցանա-
Հեռա-
Առարկա
ԲՈՒՀ
Դիպլոմ
Դպրոց
Հասցե
Տնօրեն
խագահ
կակիր
խոս
Ինֆորմատիկա
Նախագահ1
ԲՈՒՀ1
I կարգի
Մրցան.1
Դպրոց 1
Հասցե 1
Տնօրեն 1
հեռ 1
Ինֆորմատիկա
Նախագահ1
ԲՈՒՀ1
II կարգի
Մրցան.2
Դպրոց 2
Հասցե 2
Տնօրեն 2
հեռ 2
Ինֆորմատիկա
Նախագահ1
ԲՈՒՀ1
III կարգի
Մրցան.3
Դպրոց 2
Հասցե 2
Տնօրեն 2
հեռ 2
Մաթեմատիկա
Նախագահ2
ԲՈՒՀ2
I կարգի
Մրցան.4
Դպրոց 1
Հասցե 1
Տնօրեն 1
հեռ 1
Մաթեմատիկա
Նախագահ2
ԲՈՒՀ2
II կարգի
Մրցան.5
Դպրոց 1
Հասցե 1
Տնօրեն 1
հեռ 1
Մաթեմատիկա
Նախագահ2
ԲՈՒՀ2
III կարգի
Մրցան.6
Դպրոց 3
Հասցե 3
Տնօրեն 3
հեռ 3
Ֆիզիկա
Նախագահ3
ԲՈՒՀ3
I կարգի
Մրցան.7
Դպրոց 4
Հասցե 4
Տնօրեն 4
հեռ 4
Ֆիզիկա
Նախագահ3
ԲՈՒՀ3
II կարգի
Մրցան.8
Դպրոց 3
Հասցե 3
Տնօրեն 3
հեռ 3
Ֆիզիկա
Նախագահ3
ԲՈՒՀ3
III կարգի
Մրցան.9
Դպրոց 5
Հասցե 5
Տնօրեն 5
հեռ 5
Ինչպես տեսնում եք, ժյուրիի նախագահի և օլիմպիադայի մասնակցի
դպրոցի վերաբերյալ տվալները ծանրաբեռնում են աղուսակը, առա-
վել ևս, որ դրանք որոշ գրառուﬓերում կրկնվում են։ Նման դեպքերում
ողջ տվալները ﬕևնույն աղուսակում պահպանելը նպատակահարմար
չէ։ Փորձենք պահանջվող տվալների հենքը մասնատել երեք տարբեր
աղ ուսակների (աղուսակ 1.2, 1.3 և 1.4)։ Ինչպես տեսնում եք, աղուսակ
1.2-ը ժյուրիի նախագահի և դպրոցի վերաբերյալ ﬕայն ﬔկական դաշտ
է պարունակում՝ Նախագահի կոդը և Դպրոցի կոդը. այս առումով ﬓացած
ինֆորմացիան համապատասխանաբար 1.3 ու 1.4 աղուսակներ է տեղա-
փոխվել։
Ստեղծված երեք աղուսակների ﬕասնականությունն ապահովելու
նպատակով անհրաժեշտ է դրանց ﬕջև կապ ստեղծել։
Աղ ուսակների ﬕջև կարող են գործել ﬔկը-ﬔկին, ﬔկը-շատին և շա-
տը-շատին կապերը։
Մեկը-ﬔկին (1 - 1) կապի դեպքում (նկ. 1.16. ա) Աղուսակ 1-ի յուրաքանչյուր
գրառմանը կարող է Աղուսակ 2-ի ﬕայն ﬔկ գրառում համապատասխանել
և հակառակը՝ Աղուսակ 2-ի յուրաքանչյուր գրառմանը կարող է Աղուսակ
1-ի ﬕայն ﬔկ գրառում համապատասխանել։ Օրինակ՝ այսպիսի կապով
կարելի է նկարագրել հետևյալ հարաբերությունը՝ յուրաքանչյուր մարդ
23
ունի ﬕայն ﬔկ ծննդյան վկայական և յուրաքանչյուր ծննդյան վկայական
պատկանում է ﬕայն ﬔկ մարդու։
Արտաքին բանալի
Արտաքին բանալի
Աղուսակ 1.2
N
Առարկա
Նախագահի
Դիպլոմ
Մրցանակակիր
Դպրոցի
կոդը
կոդը
1.
Ինֆորմատիկա
N1
Առաջին կարգի
Մրցանակակիր 1
D1
2.
Ինֆորմատիկա
N1
Երկրորդ կարգի
Մրցանակակիր 2
D2
3.
Ինֆորմատիկա
N1
Երրորդ կարգի
Մրցանակակիր 3
D2
4.
Մաթեմատիկա
N2
Առաջին կարգի
Մրցանակակիր 4
D1
5.
Մաթեմատիկա
N2
Երկրորդ կարգի
Մրցանակակիր 5
D1
6.
Մաթեմատիկա
N2
Երրորդ կարգի
Մրցանակակիր 6
D3
7.
Ֆիզիկա
N3
Առաջին կարգի
Մրցանակակիր 7
D4
8.
Ֆիզիկա
N3
Երկրորդ կարգի
Մրցանակակիր 8
D3
9.
Ֆիզիկա
N3
Երրորդ կարգի
Մրցանակակիր 9
D5
Առաջնային բանալի
Առաջնային բանալի
Աղուսակ 1.3
Աղուսակ 1.4
Նախագա-
Ժյուրիի
ԲՈՒՀ
Դպրոցի
Դպրոց
Հասցե
Տնօրեն
Հեռա-
հի կոդը
նախագահ
կոդը
խոս
N1
Նախագահ1
ԲՈՒՀ1
D1
Դպրոց 1
Հասցե 1
Տնօրեն 1
հեռ 1
N2
Նախագահ2
ԲՈՒՀ2
D2
Դպրոց 2
Հասցե 2
Տնօրեն 2
հեռ 2
N3
Նախագահ3
ԲՈՒՀ3
D3
Դպրոց 3
Հասցե 3
Տնօրեն 3
հեռ 3
D4
Դպրոց 4
Հասցե 4
Տնօրեն 4
հեռ 4
D5
Դպրոց 5
Հասցե 5
Տնօրեն 5
հեռ 5
Մեկը-շատին (1 - ) կապի դեպքում (նկ. 1.16. բ) Աղուսակ 1-ի յուրա-
քանչյուր գրառմանը կարող են Աղուսակ 2-ի ﬕ քանի գրառուﬓեր համա-
պատասխանել, իսկ Աղուսակ 2-ի ոչ ﬕ գրառում Աղուսակ 1-ում չի կարող
ﬔկից ավելի համապատասխան գրառում ունենալ։ Նման կապ կարելի
է հաստատել, օրինակ, այն աղուսակների ﬕջև, որոնք տվալներ են նե-
րառում դպրոցի դասարանների և աշակերտների մասին. աﬔն դասարան
կարող է բազմաթիվ աշակերտներ ունենալ, բայց յուրաքանչյուր աշակերտ
24
ﬕայն ﬕ դասարանում է սովորում)։ Վերը բերված օրինակում աղուսակ
1.3-ը 1.2-ի հետ կապված է ﬔկը-շատին կապով, որովհետև աղուսակ 1.2-
ում ﬕ շարք դպրոցներ ﬕ քանի անգամ են հանդես գալիս։ Աղուսակ 1.4-ը
1.2-ի հետ ևս ﬔկը-շատին կապով է կապված, քանի որ աղուսակ 1.2-ում
ﬕևնույն ժյուրիի նախագահը ներառվել է երեք անգամ։
Եթե Աղուսակ 1-ի գրառուﬓերին կարող են Աղուսակ 2-ի ﬕ քանի գրա-
ռուﬓեր համապատասխանել և Աղուսակ 2-ի գրառուﬓերին էլ Աղուսակ 1
ﬕ քանի գրառուﬓեր համապատասխանել, ապա այդպիսի կապն անվա-
նում են շատը-շատին ( - )։ Երկու աղուսակների ﬕջև նման կապ հնա-
րավոր է իրականացնել ﬕայն այլ աղուսակների ﬕջոցով (նկ. 1.16. գ)։ Շատը-
շատին կապով կարելի է նկարագրել, օրինակ, հետևյալ հարաբերությունը՝
բազմաթիվ ուսուցիչներ դասավանդում են բազմաթիվ դասարաններում։
Աղուսակ 1 Աղուսակ 2
Աղ ուսակ 1 Աղուսակ 2
Աղուսակ 1 Աղուսակ 3 Աղուսակ 2
ա) ﬔկը-ﬔկին
ա) ﬔկը-շատին
գ) շատը-շատին
Նկ. 1.16. Աղուսակների կապի տիպերը
Մեկը-շատին կապի դեպքում աղուսակը, որի գրառուﬓերը կապում
մասնակցում են եզակի թվով, համարվում է գլխավոր (առաջնային), իսկ
աղուսակը, որի ﬕ քանի գրառուﬓեր են ներկա կապում՝ ենթակա (երկ-
րորդային)։ Վերը բերված 1.3 ու 1.4 աղուսակները գլխավոր են աղուսակ
1.2-ի նկատմամբ, իսկ 1.2-ը՝ ենթակա աղուսակ 1.3-ի ու 1.4-ի նկատմամբ։
Յուրաքանչյուր աղուսակ պետք է առնվազն ﬔկ բանալի դաշտ պա-
րունակի, որը եզակի է այդ աղուսակի յուրաքանչյուր գրառման համար։
Բանալի դաշտը թույլատրում է աղուսակի յուրաքանչյուր գրառում ﬕար-
ժեքորեն նույնականացնել։
Դաշտը, որի պարունակությամբ աղուսակի համապատասխան
գրառումը ﬕարժեքորեն նույնականացվում է, անվանում են բանալի
դաշտ:
Աղ ուսակների ﬕջև կապ հաստատելու համար գլխավոր աղուսակից
առաջնային բանալու տեղակայման համար ենթակա աղուսակում պետք է
համապատասխան դաշտ նախատեսված լինի, որի արժեքն անվանում են
արտաքին բանալի։
25
Աղուսակների ﬕջև կապ հաստատելիս գլխավոր աղուսակի առաջ-
նային բանալի դաշտի հետ կապվում է ենթակա աղուսակի նույնանուն ար-
տաքին բանալի դաշտը։ Բերված օրինակում աղուսակ 1.3-ի Դպրոցի կոդը և
աղուսակ 1.4-ի Նախագահի կոդը անվանուﬓերով դաշտերն առաջնային
բանալիներ են և աղուսակ 1.2-ում նույնանուն արտաքին բանալի հանդի-
սացող դաշտեր ունեն։
Կապված աղուսակները տվալների ﬕասնական հենք
են հանդիսանում, որոնց հիման վրա հարցուﬓեր, ձևեր և
հաշվետվություններ կարելի է կազմակերպել:
Աղուսակում բանալի դաշտն ընտրելու համար անհրաժեշտ է.
z աղուսակի կառուցվածքը նախագծելու պատուհանում ընտրել հա-
մապատասխան դաշտը,
z ընտրել Design ներդիրի Tools խմբի կամ մնիկի աջ սեղմակով բաց-
ված ﬔնյուի Primary Key կոճակը։
Աղուսակների ﬕջև կապ հաստատելու համար անհրաժեշտ է.
z ստեղծել անհրաժեշտ աղուսակները՝ համապատասխան բանալի
դաշտերով,
z ընտրել Database Tools ներդիրի
(Relationships) կոճակը,
z ընտրել այն աղուսակները, որոնց ﬕջև անհրաժեշտ է կապ հաստա-
տել. բացված Show Table պատուհանում (նկ.1.17.) դրա համար պետք է
նշել անհրաժեշտ աղուսակներն ու սեղﬔլ Add կոճակը,
Նկ. 1.17. Աղուսակների ընտրման
Նկ. 1.18. Relationships պատուհան
պատուհան
z Close կոճակով փակել Show Table պատուհանը,
z ընտրել Relationships պատուհանում (նկ. 1.18.) բերված գլխավոր աղու-
սակի բանալի դաշտը (այն արտահայտված է գույնի մգացմամբ) ու
26
մնիկի օգնությամբ այն ենթակա աղուսակի նույնանուն դաշտ տե-
ղափոխել,
z տվալների ամբողջականությունն ապահովելու նպատակով բացված
երկխոսային վահանակից (նկ. 1.19.) ընտրել Enforce Referential Integrity
դաշտը, ապա Cascade Update Related Fields (կապված դաշտերի կասկա-
դային թարմացում) և Cascade Delete Related Records (կապված գրառում-
ների կասկադային հեռացում) դաշտերը,
z ընտրել Create կոճակը։
Նկ. 1.19. Կապի հաստատման վահանակ
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Իրար հետ կապված աղուսակներ պարունակող տվալների հենքերն
անվանում են ռել ացիոն։
1. Ի՞նչ նպատակով են ﬕ քանի դաշտեր պարունակող աղու-
սակները բաժանում իրար հետ կապված ﬕ քանի աղու-
սակների։
2. Ինչի՞ համար է բանալի դաշտը։
3. Աղուսակների ﬕջև հնարավոր ինչպիսի՞ կապեր գիտեք։
4. Ո՞ր աղուսակն են անվանում գլխավոր, ո՞րը` ենթակա։
5. Ո՞ր բանալին են անվանում առաջնային, ո՞րը` արտաքին։
6. Աղուսակում ինչպե՞ս ընտրել բանալի դաշտը։
27
Լաբորատոր աշխատանք
1.3
Կապված աղուսակների
ստեղծում
1. Հաջորդաբար կատարելով Start, All Programs, Microsoft Office, Microsoft Of-
fice Access 2007 քայլերը՝ Access 2007-ի ﬕջավայր մտեք։
2. Բացված պատուհանում ընտրեք New Blank Database բաժնի Blank Data-
base կոճակը։
3. Ակտիվացած տիրույթի File Name դաշտում ներմուծեք ստեղծվող
տվ ալների հենքի Lab_1_3_* անվանումը, որտեղ *–ի փոխարեն պետք
է ներմուծել աշակերտի դասամատյանի համարը։
4. Ընտրեք
կոճակը, ապա բացված պատուհանում ընտրեք տվալ
դասարանին հատկացված թղթապանակը։
5. Սեղﬔք Create կոճակը։
6. Ընտրեք Arial Armenian Unicode տառատեսակը։
7. Ընտրեք Home ներդիրի Views խմբի View կոճակի ստորին մասի d սլա-
քը, ապա բերված ցուցակից՝ Design View հրամանը։
8. Ընդունեք աղուսակը պահպանելու համար առաջարկվող Table1 ան-
վանուﬓ ու սեղﬔք OK կոճակը։
9. Ստորև բերված կառուցվածքով աղուսակ ստեղծեք.
10. Աղուսակի ID դաշտը դարձրեք բանալի։ Դրա համար ընտրեք ID դաշ-
տը, սեղﬔք մնիկի աջ սեղմակն ու ընտրեք Primary Key հրամանը։
11. Աղուսակի կառուցվածքը ստեղծելուց հետո
սեղմակով փակեք
պատուհանն ու աղուսակի պահպանման մասին տրված հարցմանը
պատասխանեք Ye
28
12. Մկնիկի ձախ սեղմակի կրկնակի սեղմումով բացեք Table1 աղուսա-
կը։
13. Ստորև բերված աղուսակի օրինակով այն լրացրեք.
14. Ընտրեք պատուհանի ղեկավարման սեղմակն ու աղուսակի պահ-
պանման վերաբերյալ տրված հարցմանը պատասխանեք Yes։
15. Նման ձևով ստեղծեք Դպրոցի կոդը բանալի դաշտով ստորև բերված
Table2 աղուսակը։
16. Ստեղծեք նաև Նախագահի կոդը բանալի դաշտով ստորև բերված
Table3 աղուսակը։
17. Ընտրեք Database Tools ներդիրի
(Relationships) կոճակը։
18. Բացված Show Table պատուհանում Ctrl ստեղնը սեղմած վիճակում նշեք
Table1, Table2 և Table3 աղուսակներն ու սեղﬔք Add կոճակը։
19. Close կոճակով փակեք Show Table պատուհանը։
29
20. Ընտրեք Relationships պատուհան բերված Table2 աղուսակի Դպրոցի կո-
դը բանալի դաշտն ու այն մնիկի օգնությամբ Table1 աղուսակի նույ-
նանուն դաշտ տեղափոխեք։
21. Բացված Edit Relationships պատուհանում ընտրեք Enforce Referential In-
tegrity դաշտը, ապա Cascade Update Related Fields և Cascade Delete Related
Records դաշտերը։
22. Սեղﬔք Create կոճակը։
23. Այժմ ընտրեք Relationships պատուհան բերված Table3 աղուսակի Նա-
խագահի կոդը բանալի դաշտն ու մնիկի օգնությամբ այն Table1 աղու-
սակի նույնանուն դաշտ տեղափոխեք։
24. Ընտրեք Enforce Referential Integrity դաշտը, ապա Cascade Update Related
Fields և Cascade Delete Related Records դաշտերը։
25. Սեղﬔք Create կոճակը։ Եթե աﬔն ինչ ճիշտ եք կատարել՝ կստանաք
հետևյալ կապերը.
26. Աղուսակների ﬕջև կապերը հաստատելուց հետո պատուհանի ղե-
կավարման
սեղմակով փակեք Relationships պատուհանը։
27. Կապված աղուսակների պահպանման մասին տրված հարցմանը
պատասխանեք Yes։
28. Ավարտեք աշխատանքը հենքերի ղեկավարման Access համակարգի
հետ՝ օգտվելով համակարգի հիﬓական աշխատանքային պատուհա-
նի փակման
սեղմակից։
30
§1.6. ՀԱՐՑՈՒՄՆԵՐ
Տվալների հենքի հետ աշխատելիս, որպես կանոն, օգտվողը տվալների
հենքի այս կամ այն աղուսակում պահպանված ողջ ինֆորմացիան ﬕա-
ժամանակ տեսնելու անհրաժեշտություն չունի։ Ընդհակառակը, հաճախ
անհրաժեշտ է լինում ﬕաժամանակ ցուցադրել ﬕ քանի աղուսակների
որոշակի պայմանների բավարարող տվալները։
Access-ում աղուսակային տվալները մշակելու հզոր ﬕջոց կա՝ հարցու-
մը։
Հարցումը հնարավորություն է տալիս ցուցադրել աղուսակի
առաջադրված պահանջներին բավարարող տվալները:
Հարցուﬓերը կարող են լինել պարզ և բաղադրյալ։ Պարզ հարցումը
պայման է պարունակում, իսկ բաղադրյալ հարցումը՝ տարբեր դաշտերի
համար նախատեսված ﬕ քանի պայմաններ։
Հարցուﬓեր (Queries) ստեղծելու երկու եղանակ կա.
z Query Design - կոնստրուկտորի օգնությամբ,
z Query wizard - շաբլոնների օգնությամբ։
Մենք Access 2003-ում ուսուﬓասիրել ենք կոնստրուկտորի օգնությամբ
հարցուﬓեր ստեղծելու գործընթացը։ Այժմ Access 2007-ում այդ գործըն-
թացն ուսուﬓասիրենք կապված աղուսակների համար, որի դեպքում նախ
անհրաժեշտ է Create ներդիրի Other խմբից ընտրել Query Design անվանումով
կոճակը։ Այնուհետև բացված Show Table պատուհանում (նկ. 1.20.) պետք է
Ctrl ստեղնը սեղմած վիճակում ընտրել անհրաժեշտ աղուսակներն ու սեղ-
ﬔլ Add կոճակը։
Նկ. 1.20. Հարցուﬓեր ձևակերպելու բլանկ
31
Այս եղանակով աղուսակներն ընտրելուց հետո բացվում է հարցում-
ներ ձևակերպելու բլանկը, որի վերին մասում բերվում են ընտրված աղու-
սակները՝ համապատասխան կապերով (նկ. 1.21.)։ Բլանկի ստորին մասում
երևում է հարցուﬓեր ձևակերպելու բլանկը։
Նկ. 1.21. Ընտրված աղուսակներն ու հարցուﬓեր ձևակերպելու բլանկը
Հարցուﬓերի բլանկը լրացնելուց առաջ պետք է մնիկի ձախ սեղմա-
կի կրկնակի սեղմում կատարել պատուհանի վերին մասում տեղակայված
աղուսակների այն դաշտերի վրա, որոնց վերաբերյալ պետք է հարցում
կատարել։ Այդ դեպքում բլանկի Field անվամբ տողի բջիջներում կտեղա-
դրվեն աղուսակի ընտրված դաշտերը, իսկ Table անվամբ տողի բջիջնե-
րում՝ աղուսակի անվանումը (նկ. 1.22.)։
Նկ. 1.22. Լրացված դաշտերով հարցուﬓեր ձևակերպելու բլանկ
Sort տողը նախատեսված է ընտրված դաշտն ըստ աճման կամ նվազման
կարգավորելու համար։ Կարգավորման նպատակով անհրաժեշտ է մնիկի
ցուցիչը տեղադրել համապատասխան բջիջի վրա և այդ բջիջի աջ մասում
տեղակայված սլաքով բացված ցուցակից ըստ անհրաժեշտության ընտ-
րել առաջարկվող տարբերակներից որևէ ﬔկը՝ Ascending - կարգավորել
ըստ աճման, Descending - կարգավորել ըստ նվազման, not sorted - տվալնե-
րը չկարգավորել։
Show տողը նախատեսված է նշված դաշտերը էկրանին ցուցադրելու հա-
մար։ Եթե դաշտի համապատասխան տողը նշված է ( ), ապա արդյունա-
32
րար աղուսակում տվալ դաշտը կցուցադրվի, իսկ եթե նշված չէ՝ ( ), չի
ցուցադրվի, սակայն այդտեղ ներառված տվալները կարելի է օգտագոր-
ծել։
Criteria տողի դաշտերում կարելի է նշել այն պայմանները, որոնց համա-
ձայն տվալ դաշտի արժեքներից պետք է ընտրվեն անհրաժեշտները։ Օr
տողը նախատեսված է այդ դաշտերում լրացուցիչ պայմաններ ներմուծելու
համար։
Criteria տողում յուրաքանչյուր դաշտի համար կարելի է առանձին պայ-
մաններ նշել. այս դեպքում ընտրվում են այն գրառուﬓերը, որոնք ﬕա-
ժամանակ բավարարում են բոլոր դաշտերում նշված պայմաններին։ Նկ.
1.23-ում բերված օրինակում Հայաստանի գետերի մասին ինֆորմացիա
պարունակող աղուսակից հարցուﬓերի ﬕջոցով ընտրվել են այն գետե-
րը, որոնց ընդհանուր երկարությունը գերազանցում է 150 կմ-ը, և որոնք
հանրապետության տարածքում 120 կմ-ից ավելի ձգվող հուն ունեն։
Ստեղծված հարցումը կարելի է պահպանել արագ հասանելիության վա-
հանակի կամ Office կոճակով բացված ﬔնյուի
գործիքով։
Բազային
աղ ուսակ
Հարցուﬓեր
լրացնելու
բլանկ
Արդյունա-
րար
աղ ուսակ
Նկ. 1.23. Ընտրության պայմանի աշխատանքի օրինակ
33
Նոր ստեղծված հարցումը կարելի է իրագործել Design ներդիրի Results խմ-
բի
(Run) գործիքի ﬕջոցով։ Հարցուﬓերի բլանկը կրկին կարելի է բացել
Home ներդիրի Views խմբի
(View) կոճակի ստորին մասում տեղակայված
d սլաքով բացվող ցուցակից ընտրելով Design View կոճակը։ Նախկինում
ստեղծված և արդեն պահպանված հարցումը կարելի է իրագործել Անցում-
ների տիրույթում համապատասխան օբյեկտի վրա մնիկի ձախ սեղմակի
կրկնակի սեղմումով։
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Criteria և or տողերի ընտրման պայմանները կարող են ներառել «
*» և
«?» հատուկ նշանակության պայմանանշանները, որտեղ
*-ը փոխա-
րինում է ցանկացած քանակությամբ պայմանանշանների, իսկ ?-ը`
ﬔկ պայմանանշանի։
1. Ինչի՞ համար է Queries օբյեկտը։
2. Ինչպիսի՞ տողերից է բաղկացած հարցուﬓեր ձևակերպելու
բլանկը։
3. Ինչի՞ համար է հարցուﬓեր ձևակերպելու բլանկի Sort տողը։
4. Ինչի՞ համար է հարցուﬓեր ձևակերպելու բլանկի Show տողը։
5. Ի՞նչ են նշում հարցուﬓեր ձևակերպելու բլանկի Criteria և or տողե-
րում։
Լաբորատոր աշխատանք
1.4
Կապված աղուսակներին
առնչվող հարցուﬓեր
1. Մտեք տվալների հենքերի ղեկավարման Access 2007 համակարգի ﬕ-
ջավայր։
2. Բացված պատուհանում ընտրեք New Blank Database բաժնի Blank Data-
base կոճակը։
3. Ակտիվացած տիրույթի File Name դաշտում ներմուծեք ստեղծվող
տվ ալների հենքի Lab_1_4_* անվանումը, որտեղ *–ի փոխարեն պետք
է ներմուծել աշակերտի դասամատյանի համարը։
34
4. Ընտրեք կոճակը, ապա բացված պատուհանում տվալ դասարա-
նին հատկացված թղթապանակը։
5. Սեղﬔք Create կոճակը։
6. Ընտրեք Home ներդիրի Views խմբի View կոճակի ստորին մասի d սլա-
քը, ապա բերված ցուցակից՝ Design View հրամանը։
7. Աղուսակը պահպանելու համար առաջարկվող Table1 անվան փոխա-
րեն ներմուծեք Arajadimutyun անունն ու սեղﬔք OK կոճակը։
8. Ընտրեք Arial Armenian Unicode տառատեսակը։
9. Ստեղծեք հետևյալ կառուցվածքով աղուսակը.
10. Աղուսակի ID դաշտը դարձրեք բանալի։ Դրա համար ընտրեք ID դաշ-
տը, սեղﬔք մնիկի աջ սեղմակն ու ընտրեք Primary Key հրամանը։
11. Արագ հասանելիության վահանակի
(Save) կոճակով պահպանեք
ստեղծված աղուսակի կառուցվածքը։
12. Ընտրեք Home ներդիրի Views խմբի View կոճակի ստորին մասի d սլաքը,
ապա բերված ցուցակից՝ Datasheet View հրամանը։ Աղուսակը լրացրեք
ստորև բերված տվալներով.
35
13. Ընտրեք Create ներդիրի Tables խմբի Table Design կոճակն ու ստեղծեք
Ararka անունով աղուսակ՝ Առարկայի կոդը բանալի դաշտով։ Աղուսա-
կը լրացրեք ստորև բերված տվալներով.
14. Ստեղծեք Ashakert անունով աղուսակ՝ Աշակերտի կոդը բանալի դաշ-
տով։ Աղուսակը լրացրեք ստորև բերված տվալներով.
15. Ստեղծեք Dasaran անունով աղուսակ՝ Դասարանի կոդը բանալի դաշ-
տով։ Աղուսակը լրացրեք ստորև բերված տվալներով.
16. Ընտրեք ﬔնյուի տողի Database Tools ներդիրի Show/Hide խմբի Relation-
ships հրամանը։ Բացված Show Table պատուհանում CTRL ստեղնը սեղ-
մած պահելով՝ նշեք ստեղծված 4 աղուսակներն ու սեղﬔք Add կոճա-
կը։ Close կոճակով փակեք Show Table պատուհանը։
17. Ընտրեք Relationships պատուհան բերված Ararka աղուսակի Առարկայի
կոդը բանալի դաշտն ու մնիկի օգնությամբ այն Arajadimutyun աղու-
սակի նույնանուն դաշտ տեղափոխեք։
18. Ընտրեք Enforce Referential Integrity դաշտը, ապա Cascade Update Related
Fields և Cascade Delete Related Records դաշտերը։
19. Սեղﬔք Create կոճակը։
20. Նման ձևով, ստորև բերված նկարի համաձայն, աղուսակների ﬕջև
ﬔկը-շատերին տիպի կապ հաստատեք.
36
21. Անհրաժեշտ կապերը հաստատելուց հետո պատուհանի
ղեկա-
վարման սեղմակով փակեք Relationships պատուհանը։
22. Արվածը պահպանելու մասին տրված հարցմանը պատասխանեք Yes։
23. Create ներդիրի Other խմբից ընտրեք Query Design անվանումով կոճա-
կը։
24. Բացված Show Table պատուհանում Ctrl ստեղնը սեղմած վիճակում
ընտրեք ստեղծված 4 աղուսակներն ու սեղﬔք Add կոճակը։
25. Close կոճակով փակեք Show Table պատուհանը։
26. Մկնիկի ձախ սեղմակով հաջորդաբար կրկնակի սեղմում կատարեք
պատուհանի վերին մասում տեղակայված Ashakert աղուսակի Ազ-
գանուն և Անուն, Arajadimwutyun աղուսակի Գնահատականը, Dasaran
աղ ուսակի Դասարանը և Ararka աղուսակի Առարկան դաշտերի վրա։
Այդ դեպքում բլանկի Field անվամբ տողի բջիջներում կտեղադրվեն
աղ ուսակի ընտրված դաշտերը, իսկ Table անվամբ տողի բջիջներում՝
աղ ուսակի անվանումը։
37
27. Criteria տողի գնահատականը դաշտում ներմուծելով «գեր», իսկ Առար-
կան դաշտում «Ինֆորմատիկա» հարցուﬓերն ու ընտրելով Design ներ-
դիրի Results խմբի
գործիքը՝ արդյունքում տարբեր, բայց իրար հետ
կապված աղ ուսակներից էկրանին ինֆորմացիա կբերվի այն աշա-
կերտների մասին, որոնք Ինֆորմատիկայից գերազանց գնահատա-
կան են ստացել.
28. Արագ հասանելիության վահանակի
(Save) կոճակով պահպանեք
ստեղծված հարցումը։
29. Ավարտեք աշխատանքը հենքերի ղեկավարման Access համակարգի
հետ՝ օգտվելով համակարգի հիﬓական աշխատանքային պատուհա-
նի փակման սեղմակից։
§1.7. ՁԵՎԵՐ
Մենք արդեն սովորել ենք աշխատել այնպիսի աղուսակների հետ, որ-
տեղ յուրաքանչյուր գրառում աղուսակի տող է ներկայացնում։ Տվալների
հենքի նման ներկայացումը հնարավորություն է տալիս էկրանին ﬕաժա-
մանակ ﬕ քանի գրառուﬓեր դիտել։ Սակայն տվալների հենքը հաճախ
ﬔծ քանակությամբ դաշտեր է պարունակում, դաշտերն էլ՝ բազմաթիվ
պայմանանշաններ, և հնարավոր չի լինում ﬕաժամանակ ողջ ինֆորմա-
ցիան էկրանին ամբողջությամբ դիտել։ Նման դեպքերում տվալների ներ-
մուծման և խմբագրման գործընթացներն անհաﬔմատ դժվարանում են։
Առավել բարդ է տվալներ ներմուծել ﬕաժամանակ ﬕ քանի աղուսակնե-
րում, քանի որ յուրաքանչյուր աղուսակում տվալներ ներմուծելուց առաջ
ստիպված ենք այդ աղուսակը բացել։
Բարդություններից խուսափելու համար աղուսակում տվալներ ներ-
մուծելու լավագույն տարբերակը ձևերի ստեղծուﬓ է, որը թույլատրում է
տվալներ ներմուծել ﬕաժամանակ ﬕ քանի աղուսակներում, ընդ որում՝
յուրաքանչյուր դաշտի համար հատկացնելով այնքան տեղ, որքան ան-
հրաժեշտ է։ Նման ձևերի կիրառմամբ տվալներ ներմուծելու գործընթացը
38
հնարավորինս պարզեցվում է, քանի որ յուրաքանչյուր ձևում նույն պահին
էկրանին ﬕայն ﬔկ գրառում է ցույց տրվում։
Ձևերը ներառում են կառավարման տարրեր (տեքստային դաշտեր, կո-
ճակներ, փոխանջատիչներ և այլն) ու մակագրություններ, որոնք հեշտաց-
նում են ձևի օգտագործումը և լրացնում դրա արտաքին տեսքը։ Հաճախ
ձևերին կցված մակագրությունները դաշտերի անվանուﬓեր են, իսկ տեքս-
տային դաշտերը երբեﬓ թվային տվալներ են պարունակում։
Ձևեր ստեղծելու տարբեր ﬕջոցներ գոյություն ունեն։ Մենք ձևեր ստեղ-
ծելու գործընթացն ուսուﬓասիրելու ենք վարպետի օգնությամբ։
Վարպետի օգնությամբ ձև ստեղծելու համար նախ անհրաժեշտ է.
z ընտրել Create ներդիրի Forms խմբի (նկ. 1.24.) More Forms կոճակը,
z բացված ﬔնյուից (նկ. 1.25.) ընտրել Form Wizard հրամանը։
Նկ. 1.24. Create ներդիրի Forms խումբ
Նկ. 1.25. More Forms
ﬔնյու
Ձևերի վարպետի կիրառման առաջին փուլում պետք է ընտրել աղու-
սակի կամ հարցման այն դաշտերը, որոնք պետք է ստեղծվող ձևի համար
աղբյուր հանդիսանան։ Դրա համար անհրաժեշտ է.
z մնիկի ցուցիչը տեղադրել բացված Form Wizard պատուհանի Tables/
Queries դաշտի (նկ. 1.26.) աջ մասի d սլաքի վրա, սեղﬔլ ձախ սեղ-
մակն ու բացված ցուցակից ընտրել այն աղուսակը կամ հարցումը,
որը պետք է ստեղծվող ձևի համար տվալների աղբյուր հանդիսանա
(նկ. 1.26.–ում բերված օրինակում ընտրվել է Arajadimutyun անվանու-
մով աղուսակը),
z Available Fields դաշտում նշել ընտրված աղուսակի կամ հարցման այն
դաշտերը, որոնք պետք է ներառել ստեղծվող ձևում, սեղﬔլ Next կո-
ճակը (ընտրված դաշտերի անվանուﬓերն այս քայլերի արդյունքում
կարտացոլվեն Selected Fields դաշտում)։
Form Wizard պատուհանի Available Fields դաշտում ընտրված աղուսակի
կամ հարցման դաշտերը կարելի է ավելացնել ձևում > և >> կոճակների օգ-
նությամբ (> - ավելացնում է ﬕայն ընտրված դաշտը, >> - ավելացնում են
բոլոր դաշտերը)։
39
Նկ. 1.26. Ձևերի վարպետի 1-ին երկխոսական պատուհանը. դաշտերի ընտրություն
Form Wizard պատուհանի Selected Fields-ում արդեն ընտրված դաշտերը
ստեղծվող ձևից անհրաժեշտության դեպքում կարելի է հանել < և << կո-
ճակների օգնությամբ (< - հեռացնում է ﬕայն ընտրված դաշտը, << - հե-
ռացնում է բոլոր դաշտերը)։
Ձևերի վարպետի կիրառման երկրորդ փուլում պետք է ընտրել ստեղծվող
ձևում տվալներն արտապատկերելու տեսքը։ Դրա համար անհրաժեշտ է.
Form Wizard պատուհանից (նկ. 1.27.) ընտրել Columnar (սյունակով),
Tabular (ժապավենային), Datasheet (աղուսակային), Justified (հավասա-
րեցված) տարբերակներից անհրաժեշտն ու սեղﬔլ Next կոճակը։
Ծանոթանանք ձևում տվալներ արտապատկերելու հնարավոր տեսքե-
րից երեքին.
Columnar - սա սյունակով կազմակերպված ձև է։ Այսպիսի ձևում
գրառման դաշտերը, որպես կառավարման տարրեր, տեղադրվում են
ﬔկ կամ ﬕ քանի սյունակներով։ Այդ պատճառով սա արագ ստեղծ-
վող ձևերից աﬔնահավաքն է։
Tabular - սա, այսպես կոչված, ժապավենային ձև է։ Այս ձևում գրառ-
ման դաշտերը, որպես կառավարման տարրեր, տեղադրվում են
առանձին ﬔկ դաշտով։ Սա շատ հարմար է ﬔծաքանակ տվալների
հետ աշխատելիս, որովհետև տվալներն այս դեպքում տեղաբաշխ-
վում են այնպես, ինչպես սովորական աղուսակում։ Քանի որ յուրա-
քանչյուր դաշտ ներկայացվում է առանձին կառավարման տարրով,
ապա աﬔն տարրի համար կարելի է իր ձևաչափը սահմանել, որն էլ
այս ձևի առավելությունն է։
Datasheet
- սա աղուսակի տեսքով կազմակերպված ձև է։ Այս ձևը
Access-ում ստեղծված սովորական աղուսակի տեսք ունի։
Ձևերի վարպետի կիրառման երրորդ փուլում պետք է ընտրել ձևավոր-
ման ոճը։ Դրա համար անհրաժեշտ է.
40
z Form Wizard պատուհանից (նկ. 1.28.) ընտրել առաջարկվող ստան-
դարտ ոճերից անհրաժեշտն ու սեղﬔլ Next կոճակը։
Նկ. 1.27. Ձևերի վարպետի 2-րդ
Նկ. 1.28. Ձևերի վարպետի 3-րդ
երկխոսական պատուհան. արտաքին
երկխոսական պատուհան. ձևավորման
տեսքի ընտրություն
ոճի ընտրություն
Ձևերի վարպետի կիրառման վերջին՝ չորրորդ փուլում պետք է պահպա-
նել ստեղծված ձևը։ Դրա համար անհրաժեշտ է.
z Form Wizard պատուհանում (նկ. 1.29.) ներմուծել ձևի անվանումը կամ
համաձայնել համակարգի կողﬕց առաջարկվող անվանը,
z եթե ձևը ստեղծելուց հետո այն փոփոխելու անհրաժեշտություն է ծա-
գել, ապա պետք է ընտրել Modify the form’s design (փոխել ձևի կառուց-
վածքը) փոխանջատիչը, հակառակ դեպքում՝ Open the form or enter in-
formation (ձևը բացել այն դիտելու կամ տվալներ ներմուծելու համար)
փոխանջատիչը,
z սեղﬔլ Finish կոճակը։
Ձևում տվալներ ներմուծելու համար պետք է.
անցուﬓերի տիրույթում անհրաժեշտ ձևի վրա մնիկի ձախ սեղմակի
կրկնակի սեղմում կատարել,
ձևի դաշտերում առկա գրառուﬓերը ջնջելու համար ընտրել Home
ներդիրի Records խմբի
կոճակը,
ներմուծել դաշտերի տվալները,
ներմուծված տվալները պահպանել արագ հասանելիության վահա-
նակի
(Save) կոճակով։
41
Վարպետի օգնությամբ ստեղծված ձևը կոնստրուկտորի ﬕջավայրում
խմբագրելու համար անհրաժեշտ է.
ընտրել Home ներդիրի View կոճակը,
բացված պատուհանից (նկ. 1.30.) ընտրել Design View հրամանը,
կատարել անհրաժեշտ խմբագրումը,
հարկ եղած դեպքում View կոճակով բացվող պատուհանի Form View
հրամանով վերադառնալ ձևի դիտման ռեժիﬕն։
Նկ. 1.29. Ձևերի վարպետի վերջին երկխոսական
Նկ. 1.30. Ձևի ռեժիﬕ
պատուհանը. ձևի պահպանում
ընտրություն
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Ձևի դաշտերում տվալներ ներմուծելիս հաջորդ դաշտին կարելի է
անցնել Tab սեղմակով, իսկ նախորդին` Shift+Tab-ով։
1. Ի՞նչ նպատակով են ստեղծվում ձևերը։
2. Ստեղծվող ձևերի ի՞նչ տեսքեր գիտեք։
42
Լաբորատոր աշխատանք
1.5
Ձևի ստեղծում
1. Տվալների հենքերի ղեկավարման Access 2007 համակարգի ﬕջավայր
մտեք։
2. Բացված պատուհանում ընտրեք New Blank Database կոճակը։
3. Ակտիվացած տիրույթի File Name դաշտում ներմուծեք ստեղծվող
տվալների հենքի Lab_1_5_* անվանումը, որտեղ *–ի փոխարեն պետք
է ներմուծել աշակերտի դասամատյանի համարը։
4. Ընտրեք կոճակը, ապա բացված պատուհանում՝ տվալ դասարա-
նին հատկացված թղթապանակը։
5. Սեղﬔք Create կոճակը։
6. Նոր աղուսակ ստեղծելու համար ընտրեք Create ներդիրի Tables խմբի
Table Design կոճակը։
7. Ընտրեք Arial Armenian Unicode տառատեսակը։
8. Ստեղծեք ստորև բերված կառուցվածքով աղուսակը.
9. Աղուսակի ID դաշտը դարձրեք բանալի։ Դրա համար ընտրեք ID դաշ-
տը, սեղﬔք մնիկի աջ սեղմակն ու ընտրեք Primary Key հրամանը։
10. Աղուսակի կառուցվածքը ստեղծելուց հետո
սեղմակով փակեք
պատուհանը։
11. Աղուսակը պահպանելու վերաբերյալ տրված հարցմանը պատաս-
խանեք Yes։
43
12. Առաջարկվող անվան փոխարեն ներմուծեք Meqena անվանուﬓ ու
սեղﬔլով OK կոճակը համոզվեք, որ պատուհանի ձախ վահանակին
Meqena անվանումով աղուսակ առաջացավ։
13. Ընտրեք Create ներդիրի Forms խմբի More Forms կոճակը, ապա բացված
պատուհանի Form Vizard հրամանը։
14. Քանի որ տվալ հենքում ընդաﬔնը ﬔկ աղուսակ ունենք, ապա Form
Wizard պատուհանի Tables/Queries դաշտում բերվել է Meqena աղուսա-
կը՝ Table։Meqena։
15. Available Fields-ում ներառված բոլոր դաշտերն ավելացրեք ստեղծվող
ձևի ﬔջ՝ դրա համար ընտրելով >> կոճակը։
16. Selected Fields-ում ավելացված դաշտերը ստեղծվող ձևից հանելու հա-
մար ընտրեք << կոճակը։
17. Selected Fields-ում ավելացված դաշտերը ստեղծվող ձևից փորձեք հա-
նել < կոճակի օգնությամբ։ Այդ նպատակով Selected Fields-ում նշեք ան-
հրաժեշտ դաշտն ու ընտրեք < կոճակը։
18. Այժմ փորձեք > կոճակի օգնությամբ Available Fields-ում ներառված դաշ-
տերն ավելացնել ստեղծվող ձևի ﬔջ։
19. Բացված պատուհանում ընտրեք ստեղծվող ձևի Tabular տեսքն ու սեղ-
ﬔք Next կոճակը։
20. Բացված պատուհանում հաջորդաբար փորձեք այստեղ առաջարկ-
վող ստանդարտ ոճերից յուրաքանչյուրը։ Վերջում ընտրեք Northwind
ոճն ու սեղﬔք Next կոճակը։
44
21. Բացված պատուհանում ներմուծեք ստեղծվող ձևի Meqena1 անվանու-
մը։ Այժմ ստեղծվող ձևը փոփոխելու հնարավորություն ունենալու հա-
մար ընտրեք Modify the form’s design փոխանջատիչը։
22. Սեղﬔլով Finish կոճակը՝ հնարավորություն ստացեք փոփոխելու
ստեղծված ձևի դաշտերի չափերը։
23. Մկնիկի ցուցիչով հաջորդաբար ընտրեք ստեղծված դաշտերից յու-
րաքանչյուրն ու մնիկի ցուցիչը տեղադրեք դաշտի եզրագծի վրա և
երբ այն կստանա երկկողմ սլաքի տեսք՝ մնիկի տեղաշարժմամբ փո-
փոխեք դաշտի չափերն ու ստացեք հետևյալ տեսքի ձև.
24. Ձեր ցանկությամբ համապատասխան տվալներ ներմուծեք և ավար-
տեք աշխատանքը հենքերի ղեկավարման Access համակարգի հետ՝
օգտվելով համակարգի հիﬓական աշխատանքային պատուհանի
փակման սեղմակից։
45
§1.8. ՀԱՇՎԵՏՎՈՒԹՅՈՒՆՆԵՐԻ ՍՏԵՂԾՈՒՄ
Հաշվետվությունները տվալների հենքում ներառված ինֆորմացիան
անհրաժեշտ տեսքով տպագրելու համար նախատեսված ﬕջոցներ են
տրամադրում։ Աղուսակների կամ հարցուﬓերի դաշտերի տվալներն ար-
տածելուց բացի, սրանց ﬕջոցով կարելի է նաև տարբեր արդյունարար
արժեքներ հաշվարկել, պետք եղած տվալները խմբավորել և այլն։
Access-ում հաշվետվություն ստեղծելու 3 հիﬓական եղանակ կա. ավտո-
հաշվետվության ﬕջոցով, կոնստրուկտորի ռեժիմում և վարպետի օգնու-
թյամբ։
Ծանոթանանք վարպետի օգնությամբ հաշվետվություն ստեղծելու եղա-
նակին։ Վարպետի օգնությամբ հաշվետվություն ստեղծելու համար նախ
անհրաժեշտ է ընտրել Create ներդիրի Reports խմբի (նկ. 1.31.) Report Wizard
կոճակը։
Նկ. 1.31. Create ներդիրի
Նկ. 1.32. Դաշտերի ընտրության պատուհան
Reports խումբ
Վարպետի օգնությամբ հաշվետվություններ ստեղծելու հետագա գոր-
ծընթացը բաղկացած է 6 փուլից։
Առաջին փուլում պետք է ընտրել աղուսակի կամ հարցման այն դաշ-
տերը, որոնք պետք է աղբյուր հանդիսանան ստեղծվող հաշվետվության
համար։ Դրա համար անհրաժեշտ է.
z մնիկի ցուցիչը տեղադրել բացված Report Wizard պատուհանի
(նկ. 1.32.) Tables/Queries դաշտի աջ մասի d սլաքի վրա, սեղﬔլ ձախ
սեղմակն ու բացված ցուցակից ընտրել անհրաժեշտ աղուսակը կամ
հարցումը,
46
z Available Fields դաշտում նշել ընտրված աղուսակի կամ հարցման այն
դաշտերը, որոնք պետք է ներառել ստեղծվող հաշվետվությունում և
սեղﬔլ Next կոճակը։
Այստեղ >, >>, < և << կոճակներն ունեն նույն նշանակությունը, ինչ Form
Wizard պատուհանում։
Երկրորդ փուլում պետք է տալ տվալները ներկայացնելու տեսքը, այ-
սինքն՝ տվալները խմբավորել։ Հաշվետվությունում կարելի է ﬕնչև 4 մա-
կարդակի խմբեր առանձնացնել։ Հերթական մակարդակն ավելացնելու
համար անհրաժեշտ է Report Wizard պատուհանի (նկ. 1.33.) ձախ մասի ցու-
ցակից նախ ընտրել այն դաշտի անվանումը, ըստ որի ցանկալի է գրա-
ռուﬓերը խմբավորել, ապա սեղﬔլ > կոճակը։ Պատուհանի աջ մասում
արտացոլվում է ստեղծվող հաշվետվության կառուցվածքը։ Նկ. 1.33.-ում
բերված օրինակում որպես խմբավորման վերին մակարդակ ընտրվել է Սե-
փականատերը դաշտը, իսկ որպես երկրորդ մակարդակ՝ Մակնիշը դաշտը։
Աղ ուսակի ﬓացած դաշտերը արտացոլվել են վերջին, երրորդ մակարդա-
կում։ Խմբավորման որևէ մակարդակ կարելի է հեռացնել < կոճակով։
Նկ. 1.33. Տվալների խմբավորման պատուհան
Նշենք, որ կառուցվածքի ﬕ քանի մակարդակների դեպքում (ինչպես
նկ. 1.33.-ում բերված օրինակում)
և
կոճակներով կարելի է մա-
կարդակները տեղափոխել։ Հաջորդ փուլին անցնելու համար պետք է սեղ-
ﬔլ Next կոճակը։
Երրորդ փուլում հաշվետվությունների վարպետը տվալները կարգավո-
րելու հնարավորություն է տալիս։ Ինչպես երևում է նկ. 1.34.-ում, կարելի է
ﬕնչև չորս դաշտեր կարգավորել։ Տվալները կարգավորելու համար պետք
է համապատասխան դաշտում ընտրել անհրաժեշտ գրառումը, ապա կար-
գավորման ձևը՝ Ascending - աճման կարգով, Descending - նվազման կար-
գով։ Չորրորդ փուլին անցնելու համար կրկին պետք է սեղﬔլ Next-ը։
Չորրորդ փուլում առաջարկվում է ընտրել հաշվետվության հետևյալ
ստանդարտ տեսքերից որևէ ﬔկը՝ Stepped, Block կամ Outline և որոշել հաշ-
47
վետվության արտածման ձևը (Portrait - երկայնակի, Landscape - լայնակի,
նկ. 1.35.)։ Այս ռեժիմում հաշվետվությունը մասշտաբավորվում է այնպես,
որպեսզի տեղավորվի էջի լայնքով։ Next-ի ﬕջոցով անցում կատարեք հին-
գերորդ փուլ։
Նկ. 1.34. Տվալների կարգավորման պատուհան
Նկ. 1.35. Հաշվետվության ներկայացման եղանակի ընտրություն
Հինգերորդ փուլում հաշվետվությունների վարպետն առաջարկում է
ընտրել հաշվետվության ձևավորման ոճը (նկ. 1.36.-ում ընտրվել է Office
ոճը)։ 6-րդ փուլին անցնելու համար կրկին պետք է ընտրել Next կոճակը։
Վեցերորդ փուլում առաջարկվում է պահպանել ստեղծված հաշ-
վետվությունը։ Դրա համար անհրաժեշտ է Report Wizard պատուհանում
(նկ.
1.37.) ներմուծել ձևի անվանումը կամ համաձայնել առաջարկվող
անվանը։ Ստեղծված հաշվետվությունը դիտելու համար նախատեսված
է նախնական դիտման ռեժիմը՝ Preview the report։ Եթե հաշվետվությունը
ստեղծելուց հետո ցանկանում եք այն կոնստրուկտորի ռեժիմում փոփոխ-
ման ենթարկել, ապա պետք է ընտրել Modify the report’s design ռեժիմը։ Հաշ-
վետվություն ստեղծելու վերջին փուլը պետք է ավարտել Finish կոճակով։
48
Նկ. 1.36. Հաշվետվության ձևավորման ոճի ընտրություն
Նկ. 1.37. Հաշվետվության պահպանման պատուհան
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Create ներդիրի
կոճակը հնարավորություն է տալիս տարբեր
ստանդարտների փոստային պիտակներ ստեղծել։
1. Ի՞նչ նպատակով են ստեղծվում հաշվետվությունները։
2. Հաշվետվությունների ստեղծման քանի՞ ﬕջոց գիտեք։
3. Հաշվետվությունների վարպետը քանի՞ դաշտերում է հնա-
րավորություն տալիս տվալները կարգավորել։
49
Լաբորատոր աշխատանք
1.6
Հաշվետվության ստեղծում
1. Մտեք տվալների հենքերի ղեկավարման Access 2007 համակարգի ﬕ-
ջավայր։
2. Բացեք նախորդ լաբորատոր աշխատանքում ձեր ստեղծած տվալնե-
րի հենքը։
3. Ընտրեք անցուﬓերի տիրույթի Meqena անվանումով աղուսակն ու
վարպետի օգնությամբ հաշվետվություն ստեղծելու համար սեղﬔք
Create ներդիրի Reports խմբի Report Wizard կոճակը։
4. Բացված Report Wizard պատուհանի Tables/Queries դաշտում ընտրեք
Meqena անվանումով աղուսակը։
5. Available Fields դաշտում հաջորդաբար ընտրեք Սեփականատերը, Մակ-
նիշը, Տարեթիվը դաշտերն ու սեղﬔք > կոճակը։
6. Հաջորդ փուլ անցնելու համար սեղﬔք Next կոճակը։
7. Report Wizard պատուհանի ձախ մասի ցուցակից ընտրեք Սեփականա-
տերը դաշտն ու սեղﬔք > կոճակը։
8. Հաջորդ փուլ անցնելու համար սեղﬔք Next կոճակը։
9. Բացված պատուհանի առաջին դաշտում ընտրեք Տարեթիվը դաշտը,
ապա կարգավորման Ascending տարբերակը։
10. Հաջորդ փուլին անցնելու համար սեղﬔք Next կոճակը։
11. Ընտրեք հաշվետվության Stepped ստանդարտ տեսքը, արտածման Por-
trait ձևն ու Next կոճակով հաջորդ փուլ անցեք։
12. Բացված պատուհանում ընտրեք հաշվետվության Office ոճն ու Next
կոճակով հաջորդ փուլ անցեք։
13. Համաձայնեք հաշվետվության համար առաջարկվող անվանն ու հաշ-
վետվության ստեղծուﬓ ավարտեք Finish կոճակով։
14. Բացված պատուհանում ներմուծեք ստեղծվող ձևի Meqena1 անվա-
նուﬓ ու ստեղծվող ձևը փոփոխելու հնարավորություն ունենալու հա-
մար ընտրեք Modify the form’s design փոխանջատիչը։
15. Սեղﬔք Finish կոճակը, ապա բացված պատուհանում հաջորդաբար
ընտրեք ստեղծված դաշտերից յուրաքանչյուրն ու մնիկի տեղաշարժ-
50
մամբ փոփոխեք դաշտի չափերն ու դրանց դիրքերն այնպես, որ ստա-
նաք հետևյալ տեսքով հաշվետվություն.
16. Ստեղծված տվալների հենքը պահպանեք Lab_1_6_* անվանումով, որ-
տեղ *–ի փոխարեն պետք է ներմուծել աշակերտի դասամատյանի հա-
մարը։
17. Ավարտեք աշխատանքը հենքերի ղեկավարման Access համակարգի
հետ՝ օգտվելով համակարգի հիﬓական աշխատանքային պատուհա-
նի փակման
սեղմակից։
51
2. ԾՐԱԳՐԱՎՈՐՄԱՆ ՊԱՍԿԱԼ
ԼԵԶՎԻ ՀԻՄՈՒՆՔՆԵՐԸ
§2.1. ԾՐԱԳՐԱՎՈՐՄԱՆ ԼԵԶՈՒՆԵՐ
Ինչպես գիտեք, համակարգչում մշակվող ինֆորմացիան ներկայացվում
է զրոների և ﬔկերի ﬕջոցով։ Դա է պատճառը, որ հաշվիչ տեխնիկայի
զարգացման նախնական փուլում (անցած դարի 40-50-ական թվականնե-
րին), համակարգչին տրվող հրամանների հաջորդականությունն ի սկզբա-
նե ձևակերպվում էր ﬔքենային հասկանալի զրոների ու ﬔկերի, այլ կերպ
ասած, ﬔքենայական կոդերի ﬕջոցով։
Մեքենայական կոդով տրված հրամանը բաղկացած է այդ հրամանի (գոր-
ծողության) կոդից և հրամանին մասնակից օպերանդների հասցեներից։
Մեքենայական կոդով աշխատելն աշխատատար և ժամանակ պահան-
ջող գործընթաց էր, և մարդ-ﬔքենա երկխոսությունը մատչելի դարձնելու
նպատակով ծրագրավորման տարբեր լեզուներ մշակվեցին։
Ծրագրավորման լեզուները համակարգչի հետ հաղորդակցվելու
նպատակով ստեղծված արհեստական լեզուներ են:
20-րդ դարի 50-ական թվականների առաջին կեսին Ասեմբլեր (Assembly
language) անվամբ ծրագրավորման լեզուներ ստեղծվեցին, որոնք զրոներից
և ﬔկերից բացի՝ նաև մարդկային լեզվին մոտիկ հրամաններ, այսինքն՝
օպերատորներ էին ներառում։ Այս լեզուներում առաջին անգամ սկսեցին
փոփոխականներ՝ տարբեր արժեքներ կրելու հատկությամբ օժտված ﬔ-
ծություններ կիրառել։
Ասեմբլերով գրված ծրագիրը ﬔքենայի վրա իրագործելու համար պետք
է թարգմանվեր, ուստի այդ նպատակով առաջին անգամ հատուկ թարգ-
մանիչ ծրագիր ստեղծվեց՝ Ասեմբլեր լեզվի կոմպիլ ատորը։
Կոմպիլատորները ծրագրավորման որևէ լեզվով գրված ծրագրերը
թարգմանելու նպատակով ստեղծված ﬕջոցներ են, որոնք ստուգում
են գրված ծրագրի քերականությունն ու շարահյուսությունը, և սխալ
չհայտնաբերելու դեպքում այն վերածում ﬔքենայական կոդի:
52
Ասեմբլերային լեզուները ստեղծվում էին կոնկրետ տիպի պրոցեսորնե-
րի համար և հարմարեցվում էին դրանց առանձնահատկություններին։ Այդ
պատճառով նման լեզուներն անվանեցին ծրագրավորման ցածր մակար-
դակի լեզուներ՝ նկատի առնելով, որ նման լեզվի հրամանները շատ մոտ են
ﬔքենայական կոդին։
50-ական թթ. երկրորդ կեսից սկսեցին ստեղծվել ծրագրավորման բարձր
մակարդակի լեզուներ։ Սրանք բնական լեզվին զգալիորեն մոտ լեզուներ
են և առավել հասկանալի մարդուն, քան համակարգչին։ Այս լեզուներն
արդեն, ի տարբերություն ցածր մակարդակի լեզուների, կախված չեն հա-
մակարգչի տիպից։
Տարբեր խնդիրներ լուծելու նպատակով հետագայում բարձր մակար-
դակի ծրագրավորման զանազան լեզուներ ստեղծվեցին՝ FORTRAN, COBOL,
BASIC և այլն։ Ծրագրավորման Fortran (FORmula TRANslator) լեզուն նախատես-
ված էր գիտատեխնիկական հաշվարկներ կատարելու համար։ COBOL (COm-
mon Business - Oriented Language) - նախատեսված էր կոﬔրցիային առնչվող
խնդիրներ լուծելու համար։ BASIC (Beginner’s All - Purpose Symbolic Instruction
Code) լեզուն աչքի էր ընկնում ուսուցման պարզությամբ և ուղղված էր սկս-
նակ ծրագրավորողներին։
80-ական թթ. սկզբին ծրագրավորման ﬔջ նոր, այսպես կոչված, ալ-
գորիթմական լեզուներ մշակվեցին, որոնք սկիզբ հանդիսացան կառուց-
վածքային ծրագրավորման համար։ Այս լեզուների հիﬓական առանձնա-
հատկությունն այն է, որ ալգորիթմական կառույցներն արդյունավետորեն
ծրագրավորելու հնարավորություն ընձեռեցին։
Կառուցվածքային ծրագրավորման կայացման գործում ﬔծ դեր ունի
ինչպես Pascal
(Պասկալ) լեզուն, որը ﬔր դասընթացի մասն է կազﬔլու,
այնպես էլ լայնորեն հայտնի C(Սի) լեզուն, որը թույլատրում է արագագործ
ծրագրեր ստեղծել։ Պասկալ ալգորիթմական լեզվի հիման վրա ստեղծվե-
ցին Object Pascal, իսկ QBasic լեզվի հիման վրա՝ Visual Basic օբյեկտային կողմ-
նորոշմամբ լեզուները։
C լեզվի հիման վրա 1980 թ. ստեղծվեց C++ օբյեկտային կողﬓորոշմամբ
ծրագրավորման լեզուն։ Օբյեկտային կողﬓորոշմամբ ծրագրավորման
լեզուների առանձնահատկությունն այն է, որ հիﬓված են տվալները և
դրանք մշակող ﬔթոդները ﬕավորող ծրագրային օբյեկտների վրա։
20-րդ դարի 90-ական թթ. Համացանցի զարգացմանը զուգընթաց ծրագ-
րավորման այնպիսի նոր լեզուներ ստեղծվեցին, որոնք թույլատրում են
օպերացիոն տարբեր հենքերի վրա աշխատող ծրագրեր ստեղծել։ Այսինքն՝
ﬕևնույն ծրագիրը կարող է աշխատել Համացանցին ﬕացված ցանկացած
համակարգչի վրա՝ անկախ դրա վրա եղած ընթացիկ օպերացիոն համա-
կարգից (WINDOWS, LINUX, Mac OS և այլն)։ Այդպիսի լեզու է օբյեկտային կողմ-
նորոշմամբ Java (Ջավա) լեզուն, որը ստեղծվել է C++ -ի հիմքում։
53
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Java լեզուն ներկայումս աշխարհում լայնորեն կիրառվող երկրորդ լե-
զուն է՝ Basic-ից հետո։
1. Ինչպե՞ս էին կազմվում առաջին համակարգչային ծրագրե-
րը։
2. Ի՞նչ են ներկայացնում ծրագրավորման լեզուները։
3. Ի՞նչ է կոմպիլ ատորը. առաջինը ո՞ր լեզվի համար այն ստեղծ-
վեց։
4. Առաջին ծրագրավորման լեզուներն ինչո՞ւ կոչվեցին ցածր մակար-
դակի։
5. Ծրագրավորման բարձր մակարդակի ﬕ քանի լեզուներ թվարկեք։
6. Ձեր կարծիքով, Պասկալ լեզուն ի՞նչ տիպի ծրագրավորման լեզու է։
7. Ո՞րն է օբյեկտային կողﬓորոշմամբ լեզուների գլխավոր առանձնա-
հատկությունը։
§2.2. ԾՐԱԳՐԱՎՈՐՄԱՆ ՊԱՍԿԱԼ ԼԵԶՈՒ։
ԼԵԶՎԻ ԱՇԽԱՏԱՆՔԱՅԻՆ ՄԻՋԱՎԱՅՐԸ
Ծրագրավորման Պասկալ լեզուն ստեղծվել է 1968-71 թթ.՝ շվեյցարացի
գիտնական Նիկլաուս Վիրտի կողﬕց, և անվանվել ֆրանսիացի նշանա-
վոր մաթեմատիկոս, փիլիսոփա Բլեզ Պասկալի անունով։ Ի սկզբանե լե-
զուն ստեղծվել է որպես ուսուցողական՝ նպատակ ունենալով հնարավորի-
նս մատչելի դարձնել ծրագրավորման հիմունքների ուսուցումը։ Ստեղծված
լեզուն իր պարզ քերականության և կիրառման ոլորտների բազմազանու-
թյան շնորհիվ շուտով դարձավ ժամանակի աﬔնատարածված լեզուներից
ﬔկը։
Ներկայացնենք Պասկալ լեզվի հիﬓական առանձնահատկություննե-
րից ﬕ քանիսը.
Լեզվի պարզ քերականությունը։ Հիﬓական հասկացությունների
փոքրաթիվությունը։ Պասկալ-ով գրված ծրագրի ընթեռնելիության
պարզությունը։
Պասկալ-ի կոմպիլատորի և այդ լեզվով գրված ծրագրի կողﬕց հաշ-
վիչ համակարգին ներկայացվող բավական պարզ պահանջները։
54
Լեզվի ունիվերսալությունը. Պասկալ լեզուն գործնականում կիրառելի
է ծրագրավորման ցանկացած տիպի խնդիրների համար (հաշվար-
կային, տնտեսագիտական և այլն)։
Մենք ուսուﬓասիրելու ենք լեզվի Տուրբո Պասկալ (հետագայում՝ Պաս-
կալ) տարբերակը, որը մշակվել է 1992 թվականին՝ Borland International ֆիր-
մայի կողﬕց։ Այս տարբերակի կոմպիլ ատորը (ինչպես բոլոր Turbo կոմպի-
լ ատորները) բավական արագագործ է։
Լեզվի աշխատանքային ﬕջավայրը թույլատրում է.
ստեղծել ծրագրի տեքստը,
իրագործել ծրագրի կոմպիլացիան,
օպերատիվ կերպով ուղղել գտնված քերականական սխալները,
կարգաբերել ծրագիրն ու իրականացնել այն,
օգտվել օգնության ներկառուցված համակարգից։
Ծրագրի աշխատանքային ﬕջավայր մտնելու համար անհրաժեշտ է.
z համակարգչի կոշտ սկավառակների վրա գտնել TP, TURBO, TUR-
BOPAS կամ PASCAL անվանուﬓերից որևէ ﬔկը կրող թղթապանակն
ու բացել այն,
z բացված թղթապանակում ընտրել Turbo.exe ֆայլն ու կատարման
տալ (սեղﬔլ Enter ստեղնը կամ մնիկի ձախ սեղմակի կրկնակի
սեղմում կատարել)։
Այս գործողությունների արդյունքում էկրանին բերվում է լեզվի աշխա-
տանքային ﬕջավայրը (նկ. 2.1.)։
Ծանոթանանք բացված պատուհանի հետևյալ երեք տեղամասերին.
գլխավոր ﬔնյու,
աշխատանքային տիրույթ,
վիճակի տող։
Գլխավոր ﬔնյու կարելի է մտնել երկու եղանակով՝ սեղﬔլով ստեղնա-
շարի վերին մասում առկա F10 ֆունկցիոնալ ստեղնը, կամ օգտվելով մնի-
կի ձախ սեղմակից։
Գլխավոր ﬔնյուն պարունակում է հետևյալ բաղկացուցիչ ﬕջոցները.
File
- ֆայլի հետ կապված հնարավոր գործողություններ է ընդ-
գրկում (նոր ֆայլ ստեղծել (New), նախկինում ստեղծվածը բացել
(Open), աշխատանքային ﬕջավայրում առկա ծրագիրը պահպա-
նել (Save, Save as...) և այլն։
Edit
- օգնում է ծրագրի տեքստը խմբագրել Copy - պատճենել,
Paste - տեղադրել, Delete - ընտրված հատվածը ջնջել, Undo/Redo - խըմ-
բագրական վերջին գործողությունը անտեսել/վերականգնել և այլն։
Search - ծրագրի տեքստում թույլատրում է որոնել ներմուծված
նմուշի կրկնօրինակները (Search) և անհրաժեշտության դեպքում
դրանք փոխարինել (Replase) նոր տեքստով։
55
Run - թույլատրում է հնարավոր ﬕ քանի ռեժիﬓերով գրված ծրա-
գիրն իրագործել։
Compile - ծրագիրը կոմպիլ ացիայի ենթարկելու ﬕ քանի եղա-
նակներ է պարունակում։
Debug - հնարավորություն է տալիս ծրագրում առկա տրամաբա-
նական սխալները գտնել։
Tools - որոշ լրացուցիչ ﬕջոցներ է պարունակում։
Options - թույլատրում է սահմանել կոմպիլ ացիայի և ինտեգրաց-
ված ﬕջավայրի նախագծման համար անհրաժեշտ պարաﬔտրե-
րը։
Window - թույլատրում է իրականացնել պատուհանների հետ կա-
տարվող բոլոր հիﬓական գործողությունները (բացել, փակել, տե-
ղաշարժել, չափերը փոփոխել)։
Help - թույլատրում է օգտվել համակարգչի օգնության ներքին հա-
մակարգից։
Աշխատանքային
Վերնագրային
տիրույթ
մաս
Գլխավոր ﬔնյու
Վիճակի տող
Նկ. 2.1. Տուրբո Պասկալի աշխատանքային ﬕջավայրը
56
Գլխավոր ﬔնյուի ցանկացած բաղադրիչ կարելի է ակտիվացնել նաև Alt
ստեղնի և այդ բաղադրիչի ﬔջ առկա կարﬕր գույնի պայմանանիշի ﬕա-
ժամանակ ա սեղմմամբ (օրինակ՝ ALT-F-ը բացում է File ﬔնյուն)։
Պատուհանի աշխատանքային տիրույթում կարելի է ներմուծել ծրագ-
րի տեքստը, այն խմբագրել և այլն։ Պատուհանի վերնագրային մասում
գրվում է ծրագրի տեքստը պարունակող ֆայլի անվանումը (ծրագրի նոր
ստեղծվող տեքստին ավտոմատ տրվում է NONAME անվանումը՝ NONAME00.
PAS, NONAME01.PAS և այլն)։
Վիճակի տողը որոշ կարևոր գործողություններ և դրանց համապատաս-
խանող ստեղների համադրություններ է պարունակում։
Ծանոթանանք Պասկալի ﬕջավայրում աշխատելու հիﬓական սկզ-
բունքներին։ Ծրագրի տեքստը ներմուծվում է ստեղնաշարից, ընդ որում՝
խմբագրիչի պատուհանին անընդհատ թարթող կուրսորը ցույց է տալիս
ներմուծվող պայմանանշանի դիրքը։ Յուրաքանչյուր տող ներմուծելուց հե-
տո հաջորդ տողին անցում է կատարվում ENTER-ի ﬕջոցով։ Տողն աﬔնա-
շատը կարող է 126 պայմանանշան պարունակել։
Պասկալի ﬕջավայրում խմբագրիչի պատուհանը կարող է ըստ ընտրված
ռեժիﬕ պարունակել 25 կամ 50 տող։
Ներմուծված տեքստի վրայով հնարավոր է տեղաշարժվել հետևյալ
ստեղների ﬕջոցով.
Home - վերադարձ ընթացիկ տողի սկզբնամաս,
End - անցում ընթացիկ տողի վերջնամաս,
PgUp - ընթացիկ տողից ﬔկ էջի չափով (25 կամ 50 տող) տեղաշարժվել
ծրագրի սկզբնամաս (վերև),
PgDn - ընթացիկ տողից ﬔկ էջի չափով տեղաշարժվել ներքև,
Ctr-PgUp - վերադարձ ծրագրի սկիզբ,
Ctr-PgDn - անցում ծրագրի վերջին։
Ստեղնաշարի , , , ստեղների ﬕջոցով կուրսորը կարելի է ﬔկ
պայմանանշանի չափով տեղաշարժել համապատասխանաբար դեպի
ձախ, վերև, աջ կամ ներքև։
Կուրսորի ընթացիկ դիրքից անﬕջապես ձախ ընկած պայմանանշանը
կարելի է ջնջել Backspace, իսկ ընթացիկ պայմանանշանը՝ Delete ստեղնի
օգնությամբ։
Սխալմամբ ջնջված ինֆորմացիան կարելի է քայլ առ քայլ կրկին վերա-
կանգնել Alt-Backspace ստեղների համատեղ հաջորդական սեղմուﬓերով։
Երբ ծրագրի տեքստը ներմուծված է, այն պետք է ենթարկել թարգման-
ման և իրագործման. դրա համար կարելի է օգտվել Ctr-F9 ստեղներից։
Ծրագրի աշխատանքն ավարտելուց հետո էկրանին կրկին բերվում է
խմբագրիչի պատուհանը (աշխատանքային ﬕջավայրը)։
57
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Տուրբո Պասկալի ինտեգրացված ﬕջավայրում աշխատելիս կարելի է
օգտվել հետևյալ հիﬓական հրամաններից և դրանց հետ կապված
արագագործ ստեղներից.
Alt+F5 (Alt և F5 ստեղների համատեղ սեղմում) - ծրագրի աշխա-
տանքի արդյունքի դիտում,
F2
- աշխատանքային տիրույթում առկա ծրագրի տեքստի պահ-
պանում,
Alt + X
- ելք Տուրբո Պասկալի ﬕջավայրից,
F1 - օգնության ներքին համակարգի կանչ,
Ctrl + F1 - կուրսորի ﬕջոցով ընտրված հրամանի վերաբերյալ տե-
ղեկույթի տրամադրում,
Ctrl + Y - ընթացիկ տողի ջնջում։
1. Ի՞նչ նպատակով է նախագծվել Պասկալ լեզուն։
2. Թվարկեք Պասկալ լեզվի ձեզ հայտնի առանձնահատկու-
թյունները։
3. Պասկալ-ի աշխատանքային ﬕջավայրն ի՞նչ հնարավորու-
թյուններ է ընձեռում։
4. Թվարկեք Պասկալի ﬕջավայրի գլխավոր ﬔնյուի ձեզ
հայտնի բաղկացուցիչ մասերը։
5. Ինչի՞ համար է ﬕջավայրի խմբագրիչը։
6. Ծրագրի տեքստով տեղաշարժվելու ի՞նչ ﬕջոցներ գիտեք։
7. Ինչպե՞ս կարելի է վերականգնել սխալմամբ ջնջված վերջին ինֆոր-
մացիան։
58
§2.3. ՊԱՍԿԱԼ ԼԵԶՎԻ ՏԱՐՐԵՐԸ
Պասկալ լեզվի այբուբենը բաղկացած է տառերից, թվանշաններից, հա-
տուկ պայմանանշաններից և առանցքային բառերից։
Լեզվում կիրառում են լատինական այբուբենի ﬔծատառերն ու փոքրա-
տառերը.
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
Պասկալ լեզուն տարբերություն չի դնում ﬔծատառերի և փոքրատառե-
րի ﬕջև, oրինակ՝ VAR և var բառերը ﬕևնույն նշանակությունն ունեն։
Լեզվում օգտագործվում են արաբական 0, 1, 2, ..., 9 թվանշանները։
Հատուկ պայմանանշանները, կախված կիրառուﬕց, կարող են տարբեր
իմաստներ ունենալ.
{
}
[
]
(
)
;
, .
=
+
-
/
։
_
=
>
<
# &
@
Լեզվում օգտագործում են նաև պայմանանշանների որոշակի համա-
դրություններ, որոնք ընդունվում են որպես ամբողջություն, գրվում են կից՝
առանց բացատանիշի և որոշակի իմաստ ունեն.
(*
*)
։=
>=
<=
<> . . .
Պասկալում ընդունված առանցքային բառերը որոշակի իմաստ ունեցող
հատուկ տերﬕններ են։
Լեզվում կիրառվում են հետևյալ առանցքային բառերը.
and
downto
inline
procedure
type
array
else
interface
program
unit
asm
end
label
record
until
begin
file
mod
repeat
uses
case
for
nil
set
var
const
function
not
shl
while
constructor
goto
object
shr
with
destructor
if
of
string
xor
div
implementation or
then
do
in
packed
to
Ծրագիր կազﬔլիս հաճախ է անհրաժեշտ լինում որոշ ﬔծություննե-
րին անվանուﬓեր տալ և հետագայում դրանք այդ անվանուﬓերով կի-
րառել։ Տրված անվանուﬓերը կոչվում են իդենտիֆիկատորներ։ Իդենտի-
ֆիկատորները կազմվում են լեզվում ընդունված տառերով ու թվերով, իսկ
հատուկ պայմանանշաններից կարող են պարունակել ﬕայն ընդգծման
( _ ) նշանը։
59
Իդենտիֆիկատորը պետք է սկսվի տառով և չի կարող առանցքային
բառ լինել։
Հետևյալ գրառուﬓերը ճիշտ իդենտիֆիկատորներ են՝ A2B, DDd, A_3։
Քանի որ լեզուն ﬔծատառերի և փոքրատառերի ﬕջև տարբերություն
չի դնում, ապա BETA, Beta և beta իդենտիֆիկատորները համարժեք են և
նշում են ﬕևնույն ﬔծությունը։
Եթե իդենտիֆիկատորը պետք է ﬕ քանի բառ պարունակի, ապա կարե-
լի է բաղադրիչ բառերը սկսել ﬔծատառերով կամ դրանց ﬕջև ընդգծման
նշան դնել։ Օրինակ՝ AlfaBeta կամ ALFA_BETA։
Այն ﬔծությունները, որոնց արժեքները ծրագրի կատարման
ընթացքում չեն փոփոխվում, կոչվում են հաստատուն ﬔծություններ
կամ հաստատուններ:
Հաստատունները ծրագրում կարող են ներկայացվել ինչպես կոնկրետ
արժեքների, այնպես էլ անվանուﬓերի (իդենտիֆիկատորների) ﬕջոցով։
Ծանոթանանք Պասկալում կիրառվող թվային և սիմվոլային տիպերի
հաստատուններին։
Թվային հաստատունները գրվում են մաթեմատիկայից ձեզ հայտնի գրե-
լաձևով, ընդ որում՝ դրական թվի դեպքում + նշանը կարող է բացակայել։
Թվերը կարող են ներկայացվել ամբողջ և իրական թվերի տեսքով։
Իրական թվում ամբողջ և կոտորակային մասերն իրարից անջատվում են
տասնորդական կետի (.) ﬕջոցով։ Իրական թիվը չի կարող սկսվել կամ
ավարտվել կետով։ Պասկալի կանոններով՝ ճիշտ հաստատուն թվային ﬔ-
ծություններ են, օրինակ՝ 1900, +5, -7, 2.85, 0.02, -10.802, -6.0 թվերը։
Իրական թվերը ներկայացվում են նաև ﬔկ այլ՝ ցուցչային եղանակով,
որտեղ թվի 10-ական կարգը գրվում է E կամ e տառից հետո։ Օրինակ՝ 0.003
կամ 0.3·10-2 թիվը այս եղանակով արտահայտելիս կարելի է գրել 0.3E-2
կամ 0.03E-1 տեսքով։
Սիմվոլային հաստատունը ստեղնաշարին առկա ցանկացած տառ, պայ-
մանանշան կամ թվանշան է՝ առնված ապաթարցերի ﬔջ։ Օրինակ՝ ‘c’ - c
տառն է, իսկ ‘)’ -ը փակող փակագիծը։
Ցանկացած ծրագիր գրելիս անհրաժեշտ է լինում մուտքային և որոշ ըն-
թացիկ տվալներ հետագա մշակման նպատակով պահպանել։ Դրա հա-
մար օգտվում են փոփոխականներից։
Այն ﬔծությունները, որոնց արժեքները ծրագրի կատարման
ընթացքում կարող են փոփոխվել, կոչվում են փոփոխականներ:
60
Փոփոխականները ծրագրում ներկայացվում են անունների (իդենտի-
ֆիկատորների) ﬕջոցով։ Յուրաքանչյուր փոփոխականի անունը եզակի է և
ծրագրի կատարման ընթացքում չի կարող փոփոխվել։ Ընդ որում՝ համա-
կարգչի ﬔջ յուրաքանչյուր փոփոխականի համար համապատասխան ծա-
վալով հիշողություն է հատկացվում (նկ. 2.2.)։
Փոփոխականի արժեքը
Փոփոխականի անունը
Հիշող սարք
Հիշող սարքում
AA
փոփոխական
պարունակող բջիջ
15
Նկ.2.2. Փոփոխականի տեղակայումը համակարգչի հիշող սարքում
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Իդենտիֆիկատորը կարող է ցանկացած երկարություն ունենալ, սա-
կայն Պասկալ լեզվի համար նշանակալից են ﬕայն դրա առաջին 63
պայմանանշանները։
1. Ո՞ր լեզվի այբուբենն է կիրառվում Պասկալ լեզվում։
2. Ի՞նչ է իդենտիֆիկատորը։
3. Նշեք, թե հետևյալ իդենտիֆիկատորներից որո՞նք են սխալ
և ինչո՞ւ.
ա) X - 4,
բ) eps7,
գ) Alfa 1,
դ) ParsKar,
ե) Pars_Kar,
զ) 3h26,
է) a&b։
4. Ո՞ր ﬔծություններն են անվանում հաստատուն։
5. Ի՞նչ է սիմվոլային հաստատունը։
6. Ո՞ր ﬔծություններն են կոչվում փոփոխական ﬔծություններ, և ինչ-
պե՞ս են դրանք ծրագրում ներկայացվում։
61
§2.4. ՊԱՍԿԱԼ ԾՐԱԳՐԻ ԿԱՌՈՒՑՎԱԾՔՆ ՈՒ
ՀԻՄՆԱԿԱՆ ԲԱԺԻՆՆԵՐԸ
Պասկալով գրված ծրագրի հիﬓական կառուցվածքը կարելի է ընդհա-
նուր կերպով ներկայացնել հետևյալ կերպ.
ծրագրի վերնագիր,
ծրագրում կիրառվող ﬔծությունների հայտարարում,
ծրագրի հիﬓական մարﬕն։
Ծրագրի վերնագիրը սկսվում է PROGRAM առանցքային բառով, որին հա-
ջորդող ﬔկ կամ ﬕ քանի բացատանիշից հետո գրվում է ծրագրի անունը։
Ծրագրի անունը ցանկացած իդենտիֆիկատոր է, որն ավարտվում է
կետ-ստորակետով (;)։
Օրինակ՝ PROGRAM KHNDIR;
Ընդհանրապես ծրագրի վերնագիրը կարելի է չգրել, բաց թողնել։
Ինչպես վերնագիրը, այնպես էլ Պասկալի ցանկացած հրաման (օպերա-
տոր) ավարտվում է կետ-ստորակետով (;)։
Պասկալով գրված ծրագրում կիրառվող բոլոր ﬔծությունները նախօրոք
պետք է նկարագրվեն կամ, որ նույնն է, հայտարարվեն։ Նկարագրություն-
ների կամ հայտարարությունների մասը կարող է ներառել հետևյալ հնա-
րավոր բաղադրիչները.
նոր տիպերի նկարագրություններ,
հաստատունների նկարագրություններ,
նշիչների նկարագրություններ,
փոփոխականների նկարագրություններ։
Նոր տիպերի նկարագրությունները սկսվում են TYPE առանցքային բա-
ռով, որին հաջորդում են ստեղծվող նոր տիպերի հայտարարությունները՝
իրարից ;-երով փոխանջատված։ Նոր տիպերը ստեղծվում են Պասկալում
սահմանված տիպերի հիման վրա։ Օրինակ՝
TYPE NOR_TIP=REAL;
TARIQ=BYTE;
որտեղ NOR_TIP և TARIQ իդենտիֆիկատորները ստեղծվող նոր տիպերի
անուններն են, իսկ հավասարման (=) նշանին հաջորդում են Պասկալում
նախասահմանված REAL և BYTE տիպերը (սրանց կծանոթանանք հաջորդ
պարագրաֆում)։
Հաստատունների հայտարարությունները սկսվում են CONST առանց-
քային բառով։ Օրինակ՝ CONST e=2.7; tar=’a’; և այլն։
62
Ըստ այս հայտարարման՝ e և tar իդենտիֆիկատորները ծրագրի կա-
տարման ընթացքում արժեքները փոփոխել չեն կարող՝ e-ի արժեքը կﬓա
2.7, իսկ tar-ի արժեքը՝ ‘a’ պայմանանշանը։
Նշիչների հայտարարությունը տրվում է առանցքային LABEL բառով։
Օրինակ՝
LABEL cikl, ab, 57;
Այստեղ LABEL բառից հետո, իրարից ստորակետերով անջատված,
թվարկվել են cikl, ab և 57 նշիչները։
Նշիչ կարող է լինել ինչպես իդենտիֆիկատորը, այնպես էլ դրական
ամբողջ թիվը:
Նշիչներ ստեղծվում են, երբ պետք է անուններ տալ այն օպերատորնե-
րին (հրամաններին), որոնց պետք է անցում կատարել՝ խախտելով ծրագ-
րի կատարման հաջորդական ընթացքը։ Միևնույն նշիչը չի կարող ﬔկից
ավելի օպերատորներ նշել, և հայտարարված նշիչը պետք է ծրագրում օգ-
տագործել։
Օպերատորը նշելու համար անհրաժեշտ է նշիչի և համապատասխան
օպերատորի ﬕջև վերջակետ (։) դնել։
Ծրագրում օգտագործված փոփոխականները պետք է նախօրոք հայ-
տարարել VAR առանցքային բառի տակ։ Օրինակ՝
VAR c ։ CHAR;
x , k ։ BYTE;
d , m , l ։ REAL;
Ինչպես երևում է օրինակից, նույն տիպի փոփոխականներ հայտարա-
րելիս կարելի է դրանք խմբավորել՝ իրարից ստորակետերով անջատելով։
Իդենտիֆիկատորն ու տիպ արտահայտող առանցքային բառը (BYTE, REAL և
այլն) իրարից պետք է փոխանջատել վերջակետով (։)։
Իրագործվող հրամանների հաջորդականությունը վերցվում է BEGIN և
END առանցքային բառերի ﬕջև և կազմում է ծրագրի հիﬓական մարﬕնը։
BEGIN և END բառերի ﬕջև վերցված օպերատորների ամբողջությունն
անվանում են բլոկ:
Ծրագրում բազմաթիվ բլոկներ կարող են ներառվել, սակայն ﬕայն
ծրագրի հիﬓական մարﬕնն ավարտող END-ն է ավարտվում կետով ( .
Բլոկները կարող են նաև լինել ներդրված, այսինքն՝ ﬔկը մյուսի ﬔջ նե-
րառված։
63
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Թվով արտահայտված նշիչը կարող է [0;9999] ﬕջակայքի որևէ թիվ
լինել։
¾ Միևնույն օպերատորը կարող է ﬕ քանի նշիչներ ունենալ. այս դեպ-
քում դրանք իրարից պետք է անջատել վերջակետերով (։)։
1. Թվարկեք ծրագրի կառուցվածքի բաղադրիչները։
2. Որո՞նք են Պասկալով գրված ճիշտ վերնագրերը.
ա) Program L_9;
բ) PROGRAM kk+5;
գ) ProGram DD;
դ) Program 5AB;
3. Ո՞ր նշիչներն են ճիշտ հայտարարված.
ա) LABEL a;
բ) label -5;
գ) LABLE a6;
դ) LABEL 1.25;
ե) label LL,67,k_8;
4. Ո՞ր փոփոխականներն են ճիշտ հայտարարված.
ա) VAR a։b։REAL;
բ) VAR c։CHAR, d։REAL; գ) VAR 2։BYTE;
5. Ի՞նչ է բլոկը։ Ո՞ր բլոկն է ավարտվում կետով ( . )։
§2.5. ՏՎՅԱԼՆԵՐԻ ՊԱՐԶԱԳՈՒՅՆ ՏԻՊԵՐ։
ՄԱԹԵՄԱՏԻԿԱԿԱՆ ՖՈՒՆԿՑԻԱՆԵՐ ԵՎ
ԱՐՏԱՀԱՅՏՈՒԹՅՈՒՆՆԵՐ
Համակարգչում ներկայացվող ցանկացած տվալ բնութագրվում է իր
տիպով։
Պասկալ լեզվում տվալների պարզ տիպեր են համարվում կարգային և
իրական տիպերը։ Կարգային տիպի փոփոխականները կարող են վերջավոր
քանակությամբ արժեքներ ունենալ, որոնք հնարավոր է համարակալել։
Կարգային տիպերից ուսուﬓասիրելու ենք ամբողջ, տրամաբանական,
սիմվոլային ու ﬕջակայքային տիպերը։
Ամբողջ տիպի ﬔծությունների հնարավոր արժեքները կախված են այդ
ﬔծություններին տրամադրվող հիշողության ծավալից (աղուսակ 2.1)։
Տրամաբանական տիպի փոփոխականի հնարավոր արժեքները եր-
կուսն են՝ TRUE (ճիշտ) և FALSE (սխալ)։ Ընդ որում՝ FALSE-ին համապա-
տասխանում է 0 կարգահամարը (արժեքը), իսկ TRUE-ին՝ 1։ Տրամաբանա-
64
կան տիպի ﬔծությանը տրամադրվում է 1 բայթ։ Տրամաբանական տիպի
փոփոխականը հայտարարվում է BOOLEAN առանցքային բառով, օրինակ՝
T։BOOLEAN . . . T։=true;։
Աղուսակ 2.1
Ամբողջ տիպ
Տիպի անվա-
Տրամադրվող հիշողու-
Հնարավոր արժեքների ﬕջակայքը
նումը
թյան ծավալը
(բայթերով)
BYTE
1
0 ÷ 255
WORD
2
0 ÷ 65535
INTEGER
2
-32 768 ÷ 32 767
Սիմվոլային տիպի ﬔծություն է համակարգչում ներկայացվող ցանկա-
ցած պայմանանշան՝ տառ, ապաթարցերի ﬕջև առնված ﬕանիշ թվանշան
և ցանկացած հատուկ պայմանանշան։ Սիմվոլային տիպի փոփոխականը
հայտարարվում է CHAR առանցքային բառով։
Օրինակ՝ c։CHAR; ... c։=’a’; c։=’7’;
Միջակայքային տիպը հիﬓվում է ցանկացած կարգային տիպի վրա և
ստացվում է հիﬓային հանդիսացող տվալ կարգային տիպի ﬕ մասից։
Այս տիպը տրվում է իր ստորին ու վերին եզրային արժեքների ﬕջոցով՝
դրանք իրարից բաժանելով երկու կետով (..)։ Օրինակ՝
Type t=’a’..’d’;
b=1..10;
Var alpha ։t ;
number ։b;
Ըստ այս հայտարարության՝ alpha-ն կարող է ընդունել ‘a’, ‘b’, ‘c’, ‘d’ ար-
ժեքները, իսկ number-ը՝ 1-ից 10 թվերից ցանկացածը։
Պասկալը իրական թիվ ներկայացնելու ﬕ քանի տիպեր ունի. ﬔնք կկի-
րառենք ﬕայն REAL տիպը (աղուսակ 2.2)։
Աղուսակ 2.2
Իրական տիպ
Տիպի անվա-
Բայթերի
Թվի բաղադրիչ թվանշան-
Արժեքների ﬕջակայքը
նումը
քանակը
ների քանակը
REAL
6
11-12
2.9·10-39
÷ 1.7·1038
DOUBLE
8
15-16
5.0·10-324 ÷ 1.7·10308
COMP
8
19-20
-2·1063+1 ÷ 2·1063-1
Լեզվում կարգային և իրական տիպերի հետ աշխատող ﬕ շարք ստան-
դարտ ֆունկցիաներ կան։
65
x և y ամբողջ տիպի արգուﬔնտների համար սահմանված են հետևյալ
ֆունկցիաները.
DEC(x,y) - x-ի արժեքը նվազեցնում է y-ի չափով, իսկ եթե y-ը բացա-
կայում է (DEC(x)), ապա x-ի արժեքը նվազում է 1-ով,
INC(x,y) - x-ի արժեքը աճում է y-ի չափով, իսկ եթե y-ը բացակայում է
(INC(x)), ապա x-ի արժեքը աճում է 1-ով,
ODD(x) - վերադարձնում է TRUE, եթե x-ը կենտ թիվ է, և FALSE - հակառակ
դեպքում։
Պասկալում իրական տիպի արգուﬔնտների համար նույնպես որոշակի
մաթեմատիկական ստանդարտ ֆունկցիաներ կան մշակված։ Աղուսակ 2.3-ում
բերվել են դրանց համառոտ նկարագրությունները։
Աղուսակ 2.3
Մաթ.
Համարժեք
Արգուﬔն-
Արդյունքի
Գործողությունը
ֆունկցիան
տեսքը
տի
տիպը
Պասկալում
տիպը
sin x
SIN(x)
ամբողջ,
իրական
ռադիանով արտահայտված x
իրական
արգուﬔնտի սինուսը
cos x
COS(x)
-
-
ռադիանով արտահայտված x
արգուﬔնտի կոսինուսը
arctg x
ARCTAN(x)
-
-
ռադիանով արտահայտված x
արգուﬔնտի արկտանգենսը
ln x
LN(x)
-
-
x արգուﬔնտի բնական հիմքով
լոգարիթմը
ex
EXP(x)
-
-
e բնական թվի x աստիճանը
SQRT(x)
-
-
քառակուսի արմատ x-ից
x2
SQR(x)
ամբողջ
ամբողջ
x-ի քառակուսին
իրական
իրական
|x|
ABS(x)
-
-
x-ի բացարձակ արժեքը
(մոդուլը)
[x]
INT(x)
-
ամբողջ
x-ի ամբողջ մասը
{x}
FRAC(x)
-
իրական
x-ի կոտորակային մասը
π թիվը Պասկալ լեզվում նախասահմանված է որպես pi անվամբ հաս-
տատուն։
Բնական հիմքով լոգարիթﬕց բացի, այլ հիմքով լոգարիթմական ֆունկ-
ցիայի արժեքը հաշվելու համար անհրաժեշտ է օգտվել լոգարիթﬕ ﬕ հիմ-
քից մյուսին անցնելու
բանաձևից՝ c հիմքի փոխարեն կիրա-
ռելով բնական e հիմքը։ Այսպիսով՝ logab ln(b)/ln(a):
66
Քանի որ Պասկալ լեզվում արգուﬔնտի քառակուսի աստիճանից բարձր
աստիճան հաշվող ստանդարտ ֆունկցիա չկա, ապա դրական արգուﬔն-
տի աստիճանը հաշվելու համար խորհուրդ է տրվում օգտվել մաթեմա-
տիկայից հայտնի a n = e n ln (a) առնչությունից։
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ COMP տիպը հիﬓականում հարմար է կիրառել հաշվապահական
խնդիրներ լուծելիս՝ դրամական հաշվարկներ կատարելու համար։
¾ Եռանկունաչափական ֆունկցիաների արգուﬔնտները պետք է տալ
ռադիաններով։ Աստիճանով արտահայտված անկ ունը պետք վերա-
ծել ռադիանի՝ օգտվելով
բանաձից։
¾ Որպեսզի կարողանանք օգտվել π-թվին համարժեք Pi հաստատու-
նից՝ ծրագիրը պետք է սկսել USES CRT; հրահանգով։
1. Պասկալ լեզվում տվալների ո՞ր տիպերն են անվանում
պարզ։
2. Թվարկեք ձեզ հայտնի կարգային տիպերը։
3. Ի՞նչ արժեքներ են ընդունում տրամաբանական տիպի փո-
փոխականները։
4. Ի՞նչ է սիմվոլային տիպը։
5. Ո՞ր տիպերն են կոչվում ﬕջակայքային։
6. Եթե x=7 և y=5, ապա ի՞նչ արժեք կընդունի x-ը DEC(x,y) ֆունկցիայի
արդյունքում.
ա) 2,
բ) 12։
7. Եթե a=7 և b=2, ապա ի՞նչ արժեք կընդունի aINC(a,b)-ի արդյուն-
քում.
ա) 10,
բ) 14,
գ) 6,
դ) որոշված չէ։
8. Եթե a=13, ապա ո՞րն է ճիշտ.
ա) ODD(a)=TRUE,
բ) ODD(a)=FALSE։
67
§2.6. ԹՎԱԲԱՆԱԿԱՆ ԵՎ ՏՐԱՄԱԲԱՆԱԿԱՆ
ԱՐՏԱՀԱՅՏՈՒԹՅՈՒՆՆԵՐ
Թվաբանական արտահայտությունները կարող են բաղկացած լինել
փակագծերի և գործողությունների նշանների ﬕջոցով իրար համակցված
հաստատուններից, փոփոխականներից, ստանդարտ ֆունկցիաներից։
Կարելի է ասել, որ արտահայտությունները նոր արժեքներ ստանալու ﬕ-
ջոցներ են հանդիսանում։ Արտահայտությունը, մասնավորապես, կարող է
բաղկացած լինել ﬕայն ﬔկ բաղադրիչից՝ հաստատունից, փոփոխակա-
նից կամ ստանդարտ ֆունկցիայի կիրառուﬕց. այս դեպքում արտահայ-
տության արժեքի տիպը համընկնում է տվալ բաղադրիչի տիպի հետ։
Ընդհանուր դեպքում թվաբանակն արտահայտության արժեքի տիպը
որոշվում է դրանում ներառված պարաﬔտրերի տիպերից և կիրառված
գործողություններից:
Պասկալում որոշված գործողություններից կուսուﬓասիրենք հետևյալները.
ունար (ﬔկտեղանի)՝ + , - , NOT
մուլտիպլիկատիվ ՝ * , / , DIV , MOD , AND
ադիտիվ (երկտեղանի)՝ + , - , OR
հարաբերման գործողություններ՝ = , < , > , >= , <= , <>։
Ունար + և - գործողությունները կիրառվում են արգուﬔնտի նշա-
նի իմաստով (դրական, բացասական), ընդ որում՝ դրական արգուﬔնտի
նշանը կարելի է չտալ։ Արտահայտության արժեքը հաշվելիս կիրառված
գործողությունների կատարման առաջնահերթությունը նվազում է ըստ վե-
րը բերված հաջորդականության. այսպիսով, իրագործման առումով աﬔ-
նաառաջնահերթն ունար գործողություններն են, իսկ հարաբերման գործո-
ղություններն իրականացվում են աﬔնավերջին հերթին։
Նշենք, որ փակագծերի ﬕջոցով կարելի է անհրաժեշտության դեպքում
գործողությունների կատարման առաջնահերթությունը փոխել։ Եթե ար-
տահայտության ﬔջ ներառված գործողությունները կատարման ﬕևնույն
առաջնահերթությունն ունեն, ապա իրագործվում են հաջորդաբար՝ ձա-
խից աջ։
Օրինակ՝ x + y/2 արտահայտության արժեքը հաշվելիս նախ y-ը կբաժան-
վի 2-ի վրա, ապա ստացվածը կավելացվի x-ին։ Իսկ (x + y)/2-ի դեպքում
նախ կիրագործվի x + y գումարի հաշվարկը, ապա արդյունքը կբաժանվի
2-ի վրա։ Իսկ x
* y/2 արտահայտության արժեքը հաշվելու համար գործո-
ղությունները կիրականացվեն ձախից աջ. նախ կբազմապատկվեն x և y
68
փոփոխականների արժեքները, ապա ստացված արտադրյալը կբաժանվի
2-ի (Պասկալում *-ը կիրառվում է որպես բազմապատկման նշան)։
Այժմ տանք վերը թվարկած գործողությունների համառոտ բացատրու-
թյունները։
Ունար.
+
դրական թիվ,
-
բացասական թիվ,
NOT
տրամաբանական բացասում, ընդ որում՝ NOT(TRUE)=FALSE, իսկ
NOT(FALSE)=TRUE։
Մուլտիպլիկատիվ.
բազմապատկում (եթե մասնակից օպերանդներից որևէ ﬔկն
իրական է, ապա արդյունքն իրական թիվ է),
/
բաժանում (օպերանդների տիպից անկախ՝ արդյունքն իրական
թիվ է),
DIV
ամբողջ տիպի օպերանդների բաժանում (արդյունքը նույնպես
ամբողջ է),
MOD ամբողջ տիպի օպերանդների բաժանման արդյունքի ամբողջ
ﬓացորդի ստացում,
AND
տրամաբանական ԵՎ (արդյունքը հավասար է TRUE ﬕայն այն դեպ-
քում, երբ բոլոր մասնակից օպերանդները TRUE արժեք ունեն)։
Ադիտիվ.
+
գումարում (արդյունքն իրական է, եթե գումարելիներից ﬔկն
իրական է),
-
հանում (արդյունքն իրական է, եթե օպերանդներից ﬔկն իրա-
կան է),
OR
տրամաբանական ԿԱՄ (արդյունքը TRUE է, եթե գործողությանը
մասնակցող օպերանդներից որևէ ﬔկն ունի TRUE արժեք)։
Հարաբերման գործողություններ.
=
ստուգում է օպերանդների հավասարությունը. արդյունքը TRUE
է, եթե օպերանդները հավասար են, հակառակ դեպքում՝ FALSE,
<
եթե անհավասարման ձախ մասի արժեքը փոքր է աջ մասի ար-
ժեքից՝ վերադարձվում է TRUE, հակառակ դեպքում՝ FALSE,
>
եթե անհավասարման ձախ մասի արժեքը ﬔծ է աջ մասի արժե-
քից՝ վերադարձվում է TRUE, հակառակ դեպքում՝ FALSE,
<>
անհավասարման ստուգում. արդյունքը TRUE է, եթե օպերանդ-
ների արժեքներն իրար հավասար չեն,
<=
եթե անհավասարման ձախ մասի արժեքը փոքր է կամ հավա-
սար աջ մասի արժեքից՝ վերադարձվում է TRUE, հակառակ դեպ-
քում՝ FALSE,
69
>=
եթե անհավասարման ձախ մասի արժեքը ﬔծ է կամ հավասար
աջ մասի արժեքից՝ վերադարձվում է TRUE, հակառակ դեպքում՝
FALSE։
Հարաբերման կամ NOT, AND, OR գործողություններ պարունակող
արտահայտությունները կոչվում են տրամաբանական
արտահայտություններ և տրամաբանական (TRUE, FALSE) արժեք ունեն:
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ NOT, AND, OR տրամաբանական գործողությունները կիրառելի են նաև
ամբողջ տիպի օպերանդների համար. այս դեպքում արդյունքը նույն-
պես ամբողջ թիվ է (գործողություններն իրականացվում են օպերանդ-
ների համապատասխան բիթերի հետ՝ ըստ 2.4 աղուսակի)։
Աղուսակ 2.4
Տրամաբանական (կարգային) գործողություններ ամբողջ տիպի հետ
I օպերանդ
II օպերանդ
NOT
AND
OR
1
-
0
-
-
0
-
1
-
-
0
0
-
0
0
0
1
-
0
1
1
0
-
0
1
1
1
-
1
1
1.
2cosx+0.1sinx2 արտահայտությունը հանրահաշվակա՞ն, թե՞
տրամաբանական արտահայտություն է։
2. Եթե x=2, ապա ի՞նչ արժեքներ կընդունեն հետևյալ արտա-
հայտությունները.
ա) (x>1) AND (x<7),
բ) (x>0) OR (x<-5),
գ) NOT (x>1),
դ) 7 DIV x,
ե) 10 MOD x։
3. Ստորև բերված արտահայտությունները գրեք Պասկալ լեզվով.
ա)
բ)
գ)
դ)
ե)
70
§2.7. ՄԵԿՆԱԲԱՆՈՒԹՅՈՒՆՆԵՐ։ ՎԵՐԱԳՐՄԱՆ
ՕՊԵՐԱՏՈՐ։ ՆԵՐՄՈՒԾՄԱՆ ՀՐԱՀԱՆԳ
Ծրագիրն առավել ընթեռնելի դարձնելու նպատակով հատուկ ﬕջոց-
ներ՝ ﬔկնաբանություններ են կիրառվում։ Պասկալում ﬔկնաբանությունը
պայմանանշանների ցանկացած հաջորդականություն է, որն առնվում է
ձևավոր { } փակագծերի կամ (* *) նշանների ﬕջև։ Օրինակ՝
{Սա Պասկալ լեզվի ﬔկնաբանություն է։} կամ
(*Ծրագիրը հաշվում է առաջին 100 պարզ թվերի գումարը*)։
Մեկնաբանություն կարելի է տալ ծրագրի ցանկացած մասում։
Վերագրման օպերատորը ծառայում է փոփոխականին արժեք տալու
համար։ Ընդհանուր դեպքում այն կարելի է ներկայացնել հետևյալ կերպ՝
A։=B;
որտեղ A-ն վերագրման արդյունքում արժեք ստացող փոփոխականն է, իսկ
B-ն՝ ցանկացած արտահայտություն, որի արժեքը պետք է լինի նույն տիպի,
ինչ A փոփոխականինը։
Վերագրման օպերատորի ﬔջ աջ մասի արտահայտության արժեքը
պետք է լինի ձախ մասի փոփոխականի տիպի (բացառություն է
կազմում այն դեպքը, երբ փոփոխականն իրական տիպի է, իսկ
արտահայտության արժեքը` ամբողջ, բայց ոչ հակառակը):
Պետք է հիշել, որ վերագրման արդյունքում A փոփոխականի ունեցած նախ-
կին արժեքը ոչնչանում է։ Նկատենք նաև, որ վերագրման օպերատորում
պարտադիր կերպով մասնակցող ։= պայմանանշանների համակցությունը
գրառվում է իրար կից՝ առանց դրանց ﬕջև բացատանիշի։ Օրինակ՝
x։= 2; {1}
x։= 5*(4+x);
{2}
Եթե բերվածը դիտարկենք որպես իրար հաջորդող հրամաններ, ապա
ըստ {1} տողի՝ x փոփոխականը ստանում է 2 արժեքը։ {2} տողի արդյուն-
քում համակարգիչը նախ x-ի ընթացիկ արժեքը (2) տեղադրելով աջ մա-
սի արտահայտության ﬔջ՝ կհաշվի 4 + x-ի արժեքը (6), ապա ստացվածը
բազմապատկելով 5-ով՝ արդյունքը կվերագրի x-ին։ Այսպիսով, արդյուն-
քում x-ը նախկին (2) արժեքի փոխարեն կստանա 30 արժեքը։
Ծրագրի կատարման ընթացքում հաճախ անհրաժեշտ է լինում փոփո-
խականներին արժեքներ տալ ստեղնաշարից։ Այս գործընթացն անվանում
են ընթացիկ տվալների ներմուծում։ Ստեղնաշարից տվալներ ներմուծելու
71
նպատակով Պասկալում կիրառում են READ և READLN հրահանգները (հետա-
գայում՝ հրաման), որոնք կարելի է նկարագրել հետևյալ կերպ.
READ (մուտքի փոփոխականների ցուցակ);
READLN (մուտքի փոփոխականների ցուցակ);
Այս հրամաններում փակագծերի ﬔջ ստորակետերով անջատելով
թվարկում են այն փոփոխականները, որոնց արժեքները պետք է տալ
ստեղնաշարից։ Օրինակ՝
READ(A,B,C);
{1}
կամ՝
READLN(A,B,C);
{2}
Համակարգիչը հաջորդաբար կատարելով ծրագրում ներառված հրա-
մանները՝ ներմուծման հրամանն իրականացնելիս ընդհատում է աշխա-
տանքը և ստեղնաշարից, մուտքի ցուցակում ներառված փոփոխականնե-
րի քանակին համապատասխան, արժեքներ ներմուծելուն սպասում։ Ընդ
որում, ներմուծված արժեքները հաջորդաբար վերագրվում են մուտքի ցու-
ցակում թվարկված փոփոխականներին։ Տվալները կարելի է ներմուծել
ﬕևնույն տողում՝ դրանք իրարից բացատանիշերով անջատելով և ներ-
մուծման գործընթացն ավարտելով ENTER ստեղնով, կամ տարբեր տողե-
րում, աﬔն արժեք ներմուծելուց հետո սեղﬔլով ENTER ստեղնը։
READ և READLN հրամանների տարբերությունը տեսնելու համար շարու-
նակենք քննարկել վերը բերված օրինակը։ Եթե A, B և C փոփոխականների
արժեքները ներմուծվում են READ հրամանով, ապա տվալները կարելի է
ներմուծել հետևյալ եղանակներից ցանկացածով.
ա) 5
-7
8
(ENTER),
բ)
5
-7
(ENTER),
8 (ENTER),
գ)
5
(ENTER),
-7
(ENTER),
8
(ENTER)։
Բերված բոլոր դեպքերում A փոփոխականը կստանա 5, B-ն՝ -7, իսկ C-ն՝
8 արժեքը։
Այժմ քննարկենք READLN-ի կիրառման դեպքը. եթե ներմուծումը կատար-
վի ա) եղանակով, ապա արդյունքը համարժեք կլինի READ-ի արդյունքին,
իսկ բ) և գ) դեպքերն այլ արդյունք կտան։ Բանն այն է, որ READLN հրամանն
ENTER-ը համարում է ներմուծման գործընթացի ավարտ, և այդ պատճառով
բ) դեպքում A և B փոփոխականներն արժեքներ կստանան. C-ն՝ ոչ, իսկ գ)
դեպքում արժեք կստանա ﬕայն A-ն։
Եթե, օրինակ, փորձենք A, B, C փոփոխականների արժեքները ներմուծել
READLN(A,B);
{1}
READ(C);
{2}
72
հրամաններով, և արժեքները ներմուծենք ﬕևնույն տողի վրա, հետևյալ
կերպ՝
5
-7
8
(ENTER),
ապա կներմուծվեն ﬕայն A-ն և B-ն, իսկ C-ի համար նախատեսված 8 ար-
ժեքը կանտեսվի։ Համակարգիչն ըստ {2} հրամանի կսպասի ևս ﬔկ արժե-
քի ներմուծման, որն էլ կվերագրի C-ին։
READLN հրամանն ունի կիրառման ևս ﬔկ եղանակ՝ առանց մուտքի ցու-
ցակի.
READLN;
Այս դեպքում համակարգիչն ընդհատում է ծրագրի ընթացքը, սպասում
ստեղնաշարի ցանկացած ստեղն սեղﬔլուն, որից հետո շարունակում է
աշխատանքը։
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ READ և READLN հրամաններն իրականում ստանդարտ ենթածրագրեր
են՝ առավել լայն գործածման հնարավորություններով։
1. Պասկալում ﬔկնաբանություններ ստեղծելու քանի՞ եղանակ
գիտեք։
2. Ո՞րն է ծրագրում ﬔկնաբանություններ տալու նպատակը։
3. Ո՞ր գրառուﬓերն են ճիշտ վերագրուﬓեր.
ա) a։=5;
բ) 7։=C;
գ) d։=5 * sin(x);
4. Եթե x-ը իրական փոփոխական է, ապա ո՞ր գրառուﬓերն են ճիշտ.
ա) x։=3 * ln(5);
բ) X։=-2;
գ) X։=’C’;
դ) x։=true;
5. Քանի՞ ներմուծման հրաման գիտեք։
6. Ո՞րն է READ և READLN հրամանների տարբերությունը։
73
§2.8. ԱՐՏԱԾՄԱՆ ՀՐԱՀԱՆԳ։ ԱՐՏԱԾՄԱՆ ՁԵՎԱՉԱՓ
Ծրագրի աշխատանքի ընթացքում ստացված արդյունքներն էկրանին
արտածելու համար կիրառում են WRITE և WRITELN հրահանգները (հետա-
գայում՝ հրաման), որոնց ընդհանուր տեսքը հետևյալն է.
WRITE(ելքի ցուցակ);
WRITELN(ելքի ցուցակ);
որտեղ ելքի ցուցակը կարող է պարունակել հաստատուն արժեքներ, փո-
փոխականներ, ապաթարցերի (‘ ‘) ﬔջ առնված տեքստային ինֆորմացիա,
տրամաբանական և թվաբանական արտահայտություններ։
WRITE և WRITELN հրամանների աշխատանքի տարբերությունը տեսնելու
համար քննարկենք հետևյալ օրինակը.
WRITE (4); WRITE(5); WRITE(6);
{1}
WRITELN(4,5);
{2}
WRITE(6);
{3}
{1} դեպքում ﬔկ տողի վրա, իրար կից, կարտածվեն ելքի ցուցակներում
ներառված 4, 5 և 6 թվերը և արդյունքում էկրանին կտեսնենք 456 թիվը։
{2} դեպքում ﬔկ տողի վրա կարտածվեն ﬕայն 4-ն ու 5-ը՝ կազﬔլով 45,
իսկ 6-ը կարտածվի հաջորդ տողում (ըստ {3} հրամանի)։
Այսպիսով, WRITELN-ը, ի տարբերություն WRITE-ի, ելքի ցուցակում ներառ-
վածն արտածելուց հետո տողադարձ է կատարում։ Արտածման հրամաննե-
րում ապաթարցերի ﬔջ ներառված ցանկացած ինֆորմացիա արտածվում
է անփոփոխ. օրինակ՝ WRITE(‘Ես աշակերտ եմ’); հրամանով էկրանին կբերվի
Ես աշակերտ եմ, իսկ WRITELN(‘a=’,5); հրամանով՝ a=5 հաղորդագրությունը։
Արտածվող տվալները էկրանին առավել ցանկալի, ընթեռնելի տեսքով
ներկայացնելու նպատակով կարելի է տվալների արտածման գործընթա-
ցը ծրագրային ﬕջոցներով ղեկավարել։
WRITE և WRITELN հրամանների ﬕջոցով արտածվող յուրաքանչյուր բա-
ղադրիչին հաջորդող ։ (վերջակետ) նշանից հետո կարելի է նշել համա-
պատասխան տվալն արտածելու համար տրամադրվող դիրքերի ցանկալի
քանակը (դաշտի լայնության չափը) հետևյալ կերպ.
WRITE(x։k);
որտեղ x-ը արտածվող փոփոխականն է, k-ն արտածման համար էկրանին
տրամադրվող դիրքերի քանակը։ Եթե x-ը ամբողջ տիպի փոփոխական է,
որի թվանշանների քանակը (ներառյալ նաև “-“ պայմանանշանը, եթե թիվը
բացասական է) տրված k-ից քիչ է, ապա x-ի արժեքն արտածելիս այն ձախ
մասից կլրացվի համապատասխան քանակությամբ բացատանիշերով։
Օրինակ, եթե a=72, և տրվել է WRITE(‘a=’, a ։ 5); հրամանը, ապա կարտածվի
a=
72 ինֆորմացիան, որտեղ
-ով նշվել է բացատանիշը։
74
Եթե k-ն ավելի փոքր է, քան արտածվող թվի թվանշանների քանակը,
ապա k-ի ﬔծությունն անտեսվում է, և թիﬖ արտածվում է ամբողջությամբ՝
սկսած ընթացիկ դիրքից։
Եթե արտածվող տվալն իրական տիպի է, ապա արտածման ձևաչափ
չնշելու դեպքում արժեքն արտածվում է, այսպես կոչված, էքսպոնենտային
տեսքով, այն նախապես բերելով նորմալ տեսքի, որտեղ տասնորդական կե-
տից ձախ ﬕայն ﬔկ թվանշան է գրվում։ Օրինակ, եթե a-ն իրական տի-
պի է, որի արժեքը 52.15 է, ապա դրա արժեքը կարտածվի 5.2150000000E+01
տեսքով, որն, իհարկե, հարմար չէ ընթերցել։ Նման դեպքերում արտած-
վող ինֆորմացիան առավել ընթեռնելի դարձնելու նպատակով, արտած-
ման դաշտի լայնությունից զատ, հնարավոր է տալ նաև տասնորդական
կետից հետո պահանջվող թվանշանների քանակը (թվի ճշտության չափը)՝
հետևյալ կերպ՝ WRITE(x ։ k ։ m); ։ Օրինակ, եթե a52.15 արժեքն արտածե-
լու համար կիրառվեր WRITE(‘a=’,a։10։2); հրամանը, ապա արդյունքում կտես-
նեինք a=
52.15 ինֆորմացիան։
Եթե WRITE(x ։ k ։ m) հրամանով արտածվող x-ի արժեքում տասնորդա-
կան կետին հաջորդող մասը m հատից ավելի թվանշաններ է պարունա-
կում, ապա արտածվող թիվը կլորացվում է՝ ըստ մաթեմատիկայում ընդուն-
ված օրենքների։ Օրինակ, եթե x=101.567, և այն արտածվում է WRITE(‘x=’,x։10։2);
հրամանով, ապա կստացվի.
x=
101.57
Եթե m-ի արժեքը ﬔծ է թվի տասնորդական մասի թվանշանների քա-
նակից, ապա արտածվելիս թվի վերջում համապատասխան քանակու-
թյամբ 0-ներ են կցագրվում։ Օրինակ, եթե նախորդ դեպքում տրված լիներ
WRITE(‘x=’,x։10։4); հրամանը, ապա կստանայինք x =
101.5670 պատաս-
խանը։
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ WRITE, WRITELN հրամաններն իրականում ստանդարտ ենթածրագրեր
են՝ առավել լայն գործածման հնարավորություններով։
¾ Տվալների ներմուծման գործընթացն առավել հասկանալի դարձնե-
լու նպատակով յուրաքանչյուր ներմուծվող փոփոխականի համար
կարելի է նախ կիրառել WRITE հրամանը՝ ելքի ցուցակում ապաթար-
ցերի ﬔջ տվալ փոփոխականի վերաբերյալ ինֆորմացիայով։ Օրի-
նակ՝
WRITE(‘x=’); READ(x);
WRITE(‘y=’); READ(y);
75
1. Ո՞րն է WRITE և WRITELN հրամանների տարբերությունը։
2. x-ը ամբողջ փոփոխական է, որի արժեքը 215 է։ Ի՞նչ կար-
տածվի WRITE(‘x=’,x։2) հրամանով.
ա) x=21,
բ) x=15, գ) x=215։
3. y-ը իրական փոփոխական է, որի արժեքը -16.127 է։ Ի՞նչ կարտածվի
WRITE(‘y=’,y։4։2); հրամանով.
ա) x=-16, բ) x=-16.1,
գ) x=-16.12,
դ) x=-16.13,
ե) y=-16.127։
§2.9. ԳԾԱՅԻՆ ԱԼԳՈՐԻԹՄՆԵՐԻ ԾՐԱԳՐԱՎՈՐՈՒՄ
9-րդ դասարանի դասընթացից ծանոթ եք ալգորիթմ հասկացությանն ու
ալգորիթմ նկարագրելու եղանակներին։ Վերհիշենք ալգորիթﬓերից հայտնի
նյութը։
Ալգորիթմը քայլերի (գործողությունների) կարգավորված հաջորդակա-
նություն է, որը հանգեցնում է սպասված արդյունքին։ Ալգորիթմ նկարա-
գրելու եղանակներից ծանոթ եք բառաբանաձևային և գրաֆիկական եղա-
նակներին։ Քանի որ օգտվելու ենք ալգորիթմ նկարագրելու գրաֆիկական
եղանակից՝ վերհիշենք դրանում կիրառվող բլոկների նշանակությունները.
հաշվարկների կատարման և վերագրման գործողություն,
պայմանի ստուգում և հաշվման գործընթացի
այլընտրանքային շարունակում,
տվալների ներմուծում, տվալների արտածում,
ցիկլային գործընթացի կազմակերպում,
ալգորիթﬕ սկիզբ,
ալգորիթﬕ ավարտ,
ալգորիթﬕ հոսքի ընդհատված մասերի ﬕջև կապի ﬕջոց։
Ալգորիթﬓերը, կախված տվալ պահին լուծվող խնդրից, կարող են լի-
նել գծային, ճյուղավորված և ցիկլային։ Գծային են այն ալգորիթﬓերը, որ-
76
տեղ, պարաﬔտրերի արժեքներից անկախ, գործողությունները կատար-
վում են ﬕշտ ﬕևնույն հաջորդականությամբ՝ վերից վար, յուրաքանչյուրը՝
ﬕայն ﬔկ անգամ։ Դիտարկենք հետևյալ խնդիրը՝ հաշվել ներմուծված n
եռանիշ թիվը կազմող բաղադրիչ թվանշանների գումարը։
Նախ կազﬔնք խնդրի լուծման բլոկ-սխեման (նկ. 2.3.), ապա՝ ծրագիրը։
Նկ.2.3. Եռանիշ թվի թվանշանների գումարի հաշվման ալգորիթմ
Բերված ալգորիթմում կիրառվել են ամբողջ թվերի համար սահմանված
DIV և MOD ստանդարտ ֆունկցիաները, որտեղ a DIV b -ն վերադարձնում է
ab-ի բաժանելիս ստացվող ամբողջ արժեքը (օրինակ՝ 7 DIV 3=2), իսկ
MOD-ը՝ այդ բաժանման ամբողջ ﬓացորդը (օրինակ՝ 7 MOD 3=1
Եթե, օրինակ՝ n=672, ապա 3-րդ բլոկով կստանանք՝ a = 672 DIV 100 = 6,
4-րդ բլոկով՝ b = (672 - 100 · 6) DIV 10=7, իսկ 5-րդով՝ c = 672 MOD 10 = 2։ Այսպի-
սով՝ a, b, c փոփոխականներում ստացվել են եռանիշ թվի բաղադրիչները,
ﬓում է 6-րդ բլոկով արտածել պահանջվող գումարը։
Կազﬔնք ծրագիրը.
PROGRAM Eranish;
VAR n։Word;
{Սա եռանիշ թվի համար է։}
a,b,c։ BYTE;
{a-ն հարյուրավորի, b-ն տասնավորի, c-ն ﬕավորի համար է}
BEGIN WRITE(‘n=’); READ(n); {եռանիշ թվի ներմուծում}
a։=n DIV 100;
{հարյուրավորի ստացում}
b։=(n-100*a) DIV 10;
{տասնավորի ստացում}
c։=n MOD 10; {ﬕավորի ստացում}
77
WRITELN( ‘n-ի թվանշանների գումարը =’,a+b+c։4)
END.
Ծրագրում n-ը հայտարարված է որպես WORD տիպի փոփոխական, քա-
նի որ պետք է պարունակի դրական ամբողջ թիվ, բայց չի կարող բնութա-
գրվել որպես BYTE, քանի որ BYTE-ում տեղավորվող աﬔնաﬔծ թիվը 255
է (իսկ եռանիշի վերին եզրը հավասար է 999-ի)։ a,b,c փոփոխականների
արժեքները նույնպես դրական ամբողջ թվեր են, որոնց արժեքները չեն
կարող 9-ից ﬔծ լինել. նման արժեքների համար առավել հարմար է BYTE
տիպը։
Նկատեք, որ ծրագրում բոլոր հրամաններն ավարտվել են կետ-ստո-
րակետերով (;), բացի END-ին նախորդող հրամանից։ Պատճառն այն է, որ
END-ը ոչ ﬕայն սահմանափակում է BEGIN-ով սկսված բլոկը, այլև ավարտում
իրեն նախորդող օպերատորը։ Այսպիսով, կետ-ստորակետն այս դեպքում
կլիներ ավելորդ, և Պասկալի կոմպիլ ատորը չնայած որևէ սխալ չէր գտնի,
սակայն «կմտածեր», թե END-ի և վերջին օպերատորի ﬕջև օպերատոր կա։
Նման՝ հրաման չպարունակող օպերատորն անվանում են դատարկ օպե-
րատոր։ Դատարկ օպերատոր կա նաև երկու իրար հաջորդող կետ-ստո-
րակետերի ﬕջև։ Օրինակ x։=8; ; y։=-7; ։
Ինչպես երևում է վերը բերված ծրագրից՝ գծային ալգորիթﬓերի օգնու-
թյամբ լուծվող հաշվարկային խնդիրները կարող են պարունակել ﬕայն
ներմուծման, արտածման հրամաններ և հաշվարկներ կատարելու համար՝
վերագրման օպերատորներ։
Դիտարկենք գծային ալգորիթմով լուծվող ևս ﬕ խնդիր. x, b, c պարա-
ﬔտրերի ցանկացած իրական արժեքների համար հաշվել և արտածել y
արժեքը, եթե y = (b + c)3 = log8 (b + c)2 - x sin (b + c)։ Նախ կառուցենք խնդրի
լուծման բլոկ-սխեման (նկ. 2.4.).
Նկ.2.4. y = (b+c)3 + log8(b+c)2 - x sin(b+c) արտահայտության հաշվման ալգորիթմ
78
3-րդ բլոկում մտցված լրացուցիչ d փոփոխականի ﬔջ պահվել է b+c
արտահայտության արժեքը, որպեսզի 4-րդ բլոկում ներառված արտահայ-
տության արժեքը հաշվարկելիս b+c-ի արժեքը ﬕ քանի անգամ չհաշվենք։
Գրենք ծրագիրը.
PROGRAM Hashvark;
VAR d,b,c,x,y։REAL;
{1}
BEGIN WRITE(‘b=’); READ(b); WRITE(‘c=’); READ(c); WRITE(‘x=’); READ(x);
d։=b+c;
y։=EXP(3*LN(d))+LN(SQR(d))/ LN(8)-x*SIN(d) ;
{2}
WRITELN(‘y=’,y ։8 ։3)
END.
{2} տողում կատարված հաշվարկի ﬔջ d 3-ը հաշվվել է EXP(3*LN(d)) բա-
նաձևով՝ ըստ ab = eb·lna մաթեմատիկայից հայտնի առնչության, իսկ log8d2
հաշվվել է լոգարիթﬕ ﬕ հիմքից այլ հիմքին անցնելու կանոնով (քանի որ
Պասկալում հայտնի է ﬕայն բնական հիմքով լոգարիթմը) և 8 հիմքով լոգա-
րիթﬕց անցում է կատարվել բնական հիմքի.
։
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Պահանջվող տվ ալների ճիշտ հայտարարությունը ծրագիր կազﬔ-
լիս կարևորվում է, քանի որ համակարգչի օպերատիվ հիշողությունն
անհրաժեշտ է խնայողաբար օգտագործել։
1. Գծային ալգորիթﬓերում ո՞ր հրամաններն ու օպերատոր-
ներն են կիրառվում։
2. Ի՞նչ է դատարկ օպերատորը, ինչպե՞ս է այն կազմվում։
3. Հաշվել և արտածել տրված քառանիշ թվի թվանշանների
արտադրյալը։
4. Տրված x և a իրական ցանկացած արժեքների համար հաշվել և ար-
տածել y-ի արժեքը, եթե.
ա) y = (x + 1)(x2 + 1)sin(x + 3)
բ)
։
79
§2.10. ՃՅՈՒՂԱՎՈՐՄԱՆ ԳՈՐԾԸՆԹԱՑԸ
ԱԼԳՈՐԻԹՄՆԵՐՈՒՄ։ ՃՅՈՒՂԱՎՈՐՄԱՆ
(ՊԱՅՄԱՆԻ) ՕՊԵՐԱՏՈՐ
Խնդիրների լուծման ալգորիթﬓերը, ի տարբերություն գծայինի, հաճախ
ճյուղավորուﬓեր են պարունակում։ Պատճառը լուծման ﬔջ առկա պայ-
մաններն են, որոնցից կախված խնդրի հետագա լուծումը շարունակվում
է տարբեր ճանապարհներով։ Հիշենք, որ ալգորիթմը, որտեղ, ստուգվող
պայմանից կախված խնդրի լուծման գործընթացը շարունակվում է տար-
բեր ուղիներով, անվանում են ճյուղավորված, իսկ տվալ ուղիները՝ ճյուղեր։
Ճյուղավորուﬓեր պարունակող ալգորիթﬓերը ծրագրավորելու նպա-
տակով պայմանի օպերատոր է նախատեսված, որն ունի հետևյալ ընդհա-
նուր տեսքը.
IF a THEN b ELSE c;
Այստեղ a-ն տրամաբանական արտահայտություն է, b-ն և c-ն՝ ցանկա-
ցած օպերատոր կամ BEGIN ու END բառերի ﬕջև առնված օպերատորների
համախմբություն՝ բլոկ։
Եթե պայմանի օպերատորը ծրագրավորում է նկ. 2.5. ա)-ում բերված
տիպի գործընթաց, ապա կիրառվում է պայմանի օպերատորի համառոտ
տեսքը՝ IF a THEN b; , իսկ նկ. 2.5. բ)-ում բերվածի դեպքում՝ IF a THEN b ELSE
c; տեսքի պայմանի օպերատորը, որն անվանում են ընդարձակ։
ա)
բ)
Նկ. 2.5. Ալգորիթﬓերի ճյուղավորումը
Որպես օրինակ դիտարկենք ax2 + bx + c = 0, (a0) քառակուսի հավա-
սարման արմատները գտնելու ալգորիթմը (նկ. 2.6.)։
80
Նկ. 2.6. Քառակուսի հավասարման արմատները փնտրելու ալգորիթմ
Բլոկ-սխեմայից երևում է, որ 4-րդ բլոկում ներառված պայմանի ճշմարիտ
(TRUE) կամ կեղծ (FALSE) լինելուց կախված՝ խնդրի լուծումը շարունակվում
է տարբեր ուղղություններով, ընդ որում, պայմանի կեղծ լինելու դեպքում
ըստ 8-րդ բլոկում ներառված պայմանի ընդունած արժեքի՝ ալգորիթﬕ ﬔջ
ﬔկ այլ ճյուղավորում է առաջանում։ Կազﬔնք համապատասխան ծրագի-
րը.
PROGRAM Qar_Havasarum;
VAR a,b,c,z,d։REAL;
x1,x2,x։REAL;
BEGIN WRITE(‘a=’); READ(a);
WRITE(‘b=’); READ(b);
WRITE(‘c=’); READ(c);
d։=SQR(b)-4*a* c;
{1}
81
z։=2* a;
{2}
IF d>0 THEN
BEGIN
x1։=(-b-SQRT(d))/z; x2։=(-b+SQRT(d))/z;
WRITELN(‘x1=’,x1։10։2,’
‘։3, ‘x2=’,x2։10։2)
{3}
END
ELSE IF d=0 THEN
BEGIN
x։=-b/z;
WRITELN(‘հավասարումը ﬔկ արմատ ունի՝ x=’,x։10։2)
END
ELSE WRITELN(‘հավասարումը լուծում չունի’)
END.
Ծրագրի {1} տողում հաշվարկվել ու d-ի ﬔջ պահպանվել է քառակուսի
հավասարման որոշիչը, իսկ {2} տողում z-ին վերագրվել է 2*a–ի արժեքը՝
չնայած բլոկ-սխեմայում դրա անհրաժեշտությունը չէր զգացվում։ Բանն
այն է, որ ծրագրում անհրաժեշտ է եղել 2*a–ի արժեքը կիրառել ﬕ քանի
անգամ, և ﬔկ անգամ հաշվելով ու պահպանելով՝ ծրագրի արագագործու-
թյունը դրանից ﬕայն կշահի։
Դիտելով նկ. 2.6.-ում բերված բլոկ-սխեման՝ նկատենք, որ 4-րդ և 8-րդ
բլոկներում ներառված պայմաններից յուրաքանչյուրի ճշմարիտ լինելու
դեպքում ﬔկից ավելի հրամաններ պետք է իրագործվեն։ Նման դեպքե-
րում այդ հրամաններից բլոկ է կազմվում։
{3}
ﬔկնաբանությամբ տողում կիրառված WRITELN հրամա-
նով x1 և x2 արմատների արժեքներն արտածվում են ﬕևնույն տո-
ղի վրա. որպեսզի իրարից փոխանջատվեն՝ դրանց ﬕջև մտցվել է
։
3 պարաﬔտրը, ըստ որի x1-ի և x2-ի արժեքներն իրարից կտարան-
ջատվեն 3 իրար կից բացատանիշերով։
Քննարկենք հետևյալ խնդիրը. եթե ներմուծված a, b և c ամբողջ փոփո-
խականների արժեքները հավասար են 1-ի՝ արտածել 1, հակառակ դեպքում
(եթե դրանցից թեկուզ ﬔկը հավասար չէ 1-ի) արտածել 0 թիվը։ Կառու-
ցենք խնդրի լուծման բլոկ-սխեման և ծրագիրը.
PROGRAM Baxadryal;
VAR a,b,c:BYTE;
BEGIN WRITE(‘a=’); READ(a);
WRITE(‘b=’); READ(b);
WRITE(‘c=’); READ(c);
IF (a=1)AND(b=1)AND(c=1) THEN WRITELN(1)
ELSE WRITELN(0)
END.
82
Նկ.2.7. Ճյուղավորված ալգորիթմով խնդրի լուծման օրինակ
Փորձենք խնդրի պահանջը ձևակերպել ﬔկ այլ եղանակով։ Եթե ﬕաժա-
մանակ ճիշտ են a=1 և b=1 և c=1 պայմանները, այլ կերպ ասած՝ եթե նշված
պայմանները համակարգելի են, արտածել 1, հակառակ դեպքում՝ 0։ Հա-
մակարգելի պայմանները բլոկ-սխեմայում իրար կցվում են պայմանների
ճշմարիտ (այո) ճյուղերի ուղղություններով, իսկ ծրագրում՝ AND առանց-
քային բառի ﬕջոցով։
AND-ի ﬕջոցով կազմավորված բաղադրյալ պայմանը ճշմարիտ է, եթե
ճշմարիտ են բոլոր բաղադրիչ պայմանները, և դրանցից թեկուզ ﬔկի
կեղծ լինելու դեպքում կեղծ է ամբողջ բաղադրյալ պայմանը:
Այժմ լուծենք հետևյալ խնդիրը. արտածել YES՝ եթե a, b, c իրական թվերի
ﬔջ գոյություն ունեն իրար հավասար թվանշաններ, հակառակ դեպքում՝
NO հաղորդագրությունը։ Նախ կազﬔնք խնդրի լուծման բլոկ-սխեման.
83
Նկ. 2.8. Ճյուղավորված ալգորիթﬕ օրինակ
Այս խնդրի պահանջը ևս փորձենք այլ կերպ ձևակերպել։ Եթե ճշմարիտ
է a=b կամ a=c կամ b=c պայմաններից գոնե ﬔկը, այլ կերպ ասած՝ եթե ու-
նենք համախմբելի պայմաններ, ապա արտածել YES, հակառակ դեպքում՝
NO։ Համախմբելի պայմանները բլոկ-սխեմայում իրար կցվում են պայման-
ների կեղծ (ոչ) ճյուղերի ուղղություններով, իսկ ծրագրում՝ OR առանցքային
բառի ﬕջոցով։
OR-ի ﬕջոցով կազմավորված բաղադրյալ պայմանը ճշմարիտ է, եթե
ճշմարիտ է այն կազմող բաղադրիչ պարզ պայմաններից գոնե ﬔկը:
Կազﬔնք նկ. 2.8.-ում բերված ալգորիթﬕն համապատասխանող ծրա-
գիրը.
84
PROGRAM Yes_No;
VAR a,b,c։REAL;
BEGIN
WRITE(‘a=’); READ(a);
WRITE(‘b=’); READ(b);
WRITE(‘c=’); READ(c);
IF (a=b)OR(a=c)OR(b=c) THEN WRITELN(‘YES’)
ELSE WRITELN(‘NO’)
END.
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Բաղադրյալ պայմանը ծրագրավորելիս այն կազմող յուրաքանչյուր
պարզ պայման պետք է առնել ( ) փակագծերի ﬔջ։
¾ Եթե պայմանի օպերատորները ներդրված են, ապա հերթական
ELSE-ը համապատասխանում է դրան նախորդող մոտակա IF-ին։
1. Ո՞ր ալգորիթﬓ է համարվում ճյուղավորված։
2. Ճյուղավորված ալգորիթﬓերի ծրագրավորման նպատա-
կով ի՞նչ օպերատոր է կիրառվում։
3. Քանի՞ հնարավոր տեսք ունի պայմանի օպերատորը։
4. Բաղադրյալ պայմանը կազմող համախմբելի պարզ պայմանների
բլոկները ո՞ր ճյուղերով են կցվում ﬕմյանց և ինչպե՞ս են ծրագրա-
վորվում։
5. Արտածել YES, եթե տրված թիվը պատկանում է [-10;0] կամ [2;20] ﬕ-
ջակայքերին, հակառակ դեպքում՝ NO հաղորդագրությունը։
6. Հաշվել և արտածել տրված երեք իրարից տարբեր թվերից ﬔծի ար-
ժեքը։
7. Հաշվել և արտածել տրված երեք իրարից տարբեր թվերից փոքրի
արժեքը։
8. Տրված են երեք դրական թվեր։ Արտածել YES, եթե այդպիսի երկա-
րություններ ունեցող հատվածներով հնարավոր է եռանկ ունի կա-
ռուցել, հակառակ դեպքում՝ NO հաղորդագրությունը։
9. Արտածել 2, եթե տրված թիվը երկնիշ է, 3, եթե եռանիշ է, հակառակ
դեպքում՝ 0։
10. Տրված է եռանիշ թիվ։ Արտածել 1, եթե եռանիշ թվի թվանշանների
գումարը զույգ է, հակառակ դեպքում՝ 0։
85
§2.11. ԿՐԿՆՈՒԹՅԱՆ (ՑԻԿԼԻ) ՕՊԵՐԱՏՈՐՆԵՐ
9-րդ դասարանի դասընթացից արդեն ծանոթ եք կրկնվող կամ, այս-
պես կոչված, ցիկլային բնույթ կրող գործընթացներին։ Վերհիշենք, որ ալ-
գորիթﬓերում գործողութունը կամ գործողությունների խումբը որոշակի
անգամ կրկնելու նպատակով կիրառում են պարաﬔտրով ցիկլային կա-
ռուցվածքներ, որոնք բլոկ-սխեմաներում ներկայացվում են մոդիֆիկացիայի
բլոկի ﬕջոցով տրվող ընդհանրական սխեմայով (նկ. 2.9.)։
Կրկնվող գործընթացներին ծանոթանալու նպատակով դիտարկենք
հետևյալ խնդիրը՝ արտածել 1-ից 10 ﬕջակայքի ամբողջ թվերը։
Կազﬔնք խնդրի լուծման բլոկ-սխեման (նկ. 2.10.)։
Նկ. 2.9. Պարաﬔտրով ցիկլային
Նկ. 2.10. 1-ից 10 ﬕջակայքի ամբողջ
կառուցվածքի ընդհանրական սխեմա
թվերի արտածման բլոկ-սխեմա
Այստեղ ցիկլում ներառված ﬕակ՝ i փոփոխականի արժեքն արտածելու
գործողության կրկնությունների քանակը հայտնի է՝ 10. այսպիսի գործա-
ռույթները ծրագրավորելու համար պարաﬔտրով ցիկլի օպերատոր են կի-
րառում, որը Պասկալում ունի հետևյալ ընդհանուր տեսքը.
FOR ցիկլի պարաﬔտր ։= ցիկլի պարաﬔտրի առաջին արժեք TO ցիկլի
պարաﬔտրի վերջնական արժեք DO ցիկլի մարﬕն։
Ցիկլի պարաﬔտրն օգտագործվում է ցիկլի պարաﬔտրի արժեքը
սկզբնականից ﬕնչև վերջնականը 1-ով ավելացնելու համար։ Այս օպերա-
տորն անվանում են ցիկլի աճող պարաﬔտրով օպերատոր, որտեղ FOR, TO
և DO բառերն առանցքային բառեր են։
86
Գրենք նկ. 2.10.-ում բերված բլոկ-սխեմային համապատասխանող ծրա-
գիրը.
PROGRAM Par_Cikl1;
VAR i։BYTE;
BEGIN
FOR i։=1 TO 10 DO
{1}
WRITELN(i)
{2}
END.
{1} տողում գրվածի համաձայն՝ ծրագրի սկզբում ցիկլի i պարաﬔտրը
ստանում է նախնական 1 արժեք, որը հաﬔմատվում է պարաﬔտրի վերջ-
նական արժեք հանդիսացող 10-ի հետ. եթե պարզվեր, որ պարաﬔտրի
նախնական 1 արժեքն ավելի ﬔծ է, քան վերջնական 10 արժեքը՝ ցիկլը (ոչ
ﬕ անգամ չիրագործելով ցիկլի մարﬓում ներառված հրամանը) կավար-
տեր աշխատանքը։ Քանի որ այդպես չէ, իրականացվում է {2} տողում նե-
րառված հրամանը՝ արտածելով i-ի ընթացիկ արժեքը՝ 1 թիվը։ Այնուհետև
վերադարձ է կատարվում ցիկլի սկիզբ՝ ավտոմատ կերպով (ըստ պարա-
ﬔտրով ցիկլի գործողության սկզբունքի) նախապես 1-ով ﬔծացնելով ցիկ-
լի i պարաﬔտրի ընթացիկ արժեքը, և աﬔն ինչ (պարաﬔտրի ընթացիկ
արժեքի հաﬔմատումը վերջնականի հետ և այլն) կրկնվում է նորից։ Ցիկլն
ավարտում է աշխատանքը, երբ i պարաﬔտրի արժեքը դառնում է հնարա-
վոր վերջնականից՝ 10-ից ﬔծ։
Եթե անհրաժեշտ լիներ 10-ից ﬕնչև 1-ն ընկած թվերն արտածել 10, 9, 8,
..., 1 հաջորդականությամբ, ապա այս գործընթացը (երբ ցիկլի պարաﬔտ-
րը նվազելով է հասնում վերջնական արժեքին), ծրագրավորվում է ցիկլի
նվազող պարաﬔտրով օպերատորի ﬕջոցով, որի տեսքն այսպիսին է.
FOR ցիկլի պարաﬔտր ։= ցիկլի պարաﬔտրի առաջին արժեք DOWNTO ցիկլի
պարաﬔտրի վերջնական արժեք DO ցիկլի մարﬕն;
Այստեղ կիրառված DOWNTO-ն նույնպես առանցքային բառ է։
Բերենք 10-ից 1 թվերն արտածելու խնդրի բլոկ-սխեման ու ծրագիրը։
Նկ. 2.11. 10-ից 1 ﬕջակայքի ամբողջ թվերի արտածման բլոկ-սխեմա
87
PROGRAM Par_Cikl2;
VAR i։BYTE;
BEGIN
FOR i։=10 DOWNTO 1 DO
{1}
WRITELN(i)
END.
Ծրագրի {1} տողում նախ i պարաﬔտրը ստանում է 10 արժեքը. ցիկլի
օպերատորը DOWNTO-ով գրելու դեպքում ցիկլը աշխատանքը կավարտեր
այս փուլում, եթե պարզվեր, որ պարաﬔտրի ընթացիկ արժեքը փոքր է
վերջնականից։ Քանի որ 10-ը փոքր չէ 1-ից՝ իրագործվում է ցիկլի մարﬕնը՝
արտածելով i-ի արժեքը (10), որից հետո վերադարձ է կատարվում նորից
ցիկլի սկիզբ՝ այս անգամ արդեն պարաﬔտրի ընթացիկ արժեքը 1-ով ավ-
տոմատ պակասեցնելով։ Ամբողջ գործընթացը նորից կրկնվում է սկզբից՝
պարաﬔտրի ընթացիկ 9 արժեքը հաﬔմատվում է վերջնականի՝ 1-ի հետ
և այլն։
Այժմ կրկնողական բնույթի ﬔկ այլ գործընթաց ուսուﬓասիրենք։ Են-
թադրենք՝ անհրաժեշտ է արտածել ստեղնաշարից ներմուծված պայմա-
նանշանը, քանի դեռ ներմուծվածը ‘/ ‘ պայմանանշանը չէ։
Կազﬔնք այս գործընթացն ապահովող ծրագրի բլոկ-սխեման.
Նկ. 2.12. Նախապայմանով ցիկլային ալգորիթﬕ օրինակ
88
Այս բլոկ-սխեմայով նույնպես կրկնողական գործընթաց է իրականաց-
վել, սակայն, ի տարբերություն քննարկված նախորդ դեպքերի, այստեղ
գործողությունների կրկնության քանակն անհայտ է։ Նման գործընթացներ
ծրագրավորելու համար Պասկալում նախատեսված են ցիկլի երկու՝ նախա-
պայմանով ու վերջնապայմանով օպերատորներ։
Դիտարկենք ցիկլի նախապայմանով օպերատորը, որի ընդհանուր տես-
քը հետևյալն է.
WHILE a DO ցիկլի մարﬕն;
WHILE–ը և DO-ն առանցքային բառեր են, a-ն տրամաբանական արտա-
հայտություն է, ցիկլի մարﬕնը՝ օպերատոր կամ բլոկ։
Նախապայմանով ցիկլի օպերատորի մարﬕնը կրկնվելով իրագործ-
վում է այնքան, քանի դեռ ցիկլի կրկնության պայմանի՝ a տրամաբանական
արտահայտության արժեքը ճշմարիտ (TRUE) է, և ավարտվում է այն կեղծ
(FALSE) դառնալու դեպքում։
Այսպիսով, նախապայմանով ցիկլի մարﬕնը կարող է ոչ ﬕ անգամ չի-
րագործվել՝ եթե a-ն ի սկզբանե ունենա FALSE արժեք, իսկ մյուս դեպքում էլ
անվերջ կրկնվել, եթե a-ն երբեք FALSE արժեք չստանա։
Գրենք նկ. 2.11.-ում բերված բլոկ-սխեմային համապատասխանող ծրա-
գիրը.
PROGRAM Nax_Cikl;
VAR c։CHAR;
BEGIN WRITE(‘Որևէ ստեղն սեղﬔք’);
READLN(c);
WHILE c< >’/ ’ DO
{1}
BEGIN WRITELN(‘Ներմուծվել է ‘ , ’
։ 3, c, ’
։ 2, ‘պայմանանշանը’);
READLN(c)
END
END.
Այսպիսով, {1} տողում ներառված նախապայմանով ցիկլի օպերատորը
նախ որոշում է C<>’/ ’ տրամաբանական արտահայտության արժեքը, և եթե
այն TRUE է (ներմուծվածը ‘/ ‘ պայմանանշանը չէ), ապա իրականացվում են
BEGIN և END-ի ﬔջ ներառված օպերատորները. այստեղ ցիկլի մարﬕնը բլոկ
է կազմում, քանի որ կրկնվողը ﬔկ օպերատոր չէ, այլ ﬔկից ավելի։
Այժմ ծանոթանանք վերջնապայմանով կամ, այսպես կոչված, հետպայ-
մանով ցիկլի օպերատորին։ Սրա ընդհանուր տեսքը հետևյալն է.
REPEAT
ցիկլի մարﬕն
UNTIL տրամաբանական արտահայտություն;
որտեղ REPEAT-ը և UNTIL-ը առանցքային բառեր են։
89
REPEAT և UNTIL բառերի ﬕջև ներառվող ցիկլի մարﬕնը կազմվում է ﬔկ
կամ ﬕ քանի օպերատորներով, որոնք կրկնվելով իրագործվում են այն-
քան, քանի դեռ UNTIL-ի տրամաբանական արտահայտությունն ունի FALSE
արժեք։ Այս օպերատորի առանձնահատկությունն այն է, որ ցիկլի մարﬕ-
նը, անկախ UNTIL-ի տրամաբանական արտահայտության արժեքից, գոնե
ﬔկ անգամ իրագործվում է։
Վերը քննարկված խնդրի բլոկ-սխեման այժմ կառուցենք հետպայմա-
նով, ցիկլի օպերատորի ﬕջոցով իրագործելու համար.
Նկ. 2.13. Հետպայմանով ցիկլային ալգորիթﬕ օրինակ
Գրենք համապատասխան ծրագիրը.
PROGRAM Het_Cikl;
VAR c։CHAR;
BEGIN
REPEAT
READLN(c);
WRITELN(‘Ներմուծված պայմանանշանը’ , ’
։
3, c, ’ - ն է‘)
UNTIL c=’/ ’
END.
Ի տարբերություն նույն խնդրի նախապայմանով ցիկլի օգնությամբ լուծ-
ված տարբերակի, այստեղ ցիկլի ավարտից առաջ ներմուծված ‘/’ պայմա-
նանշանը ևս կարտածվի էկրանին։
90
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Ցիկլի ցանկացած օպերատորի աշխատանք կարելի է վաղաժամետ
ավարտել՝ դրա մարﬓում BREAK օպերատոր կիրառելով:
¾ Պարաﬔտրով ցիկլի պարաﬔտրը ցանկացած կարգային տիպի փո-
փոխական է։
¾ Եթե ցիկլի պարաﬔտրի փոփոխման քայլը 1 կամ -1 չէ, կամ, եթե այն
կարգային տիպի չէ (օրինակ՝ իրական թիվ է), ապա պարաﬔտրով
ցիկլի փոխարեն պետք է կիրառել նախապայմանով կամ հետպայ-
մանով ցիկլի օպերատորներից որևէ ﬔկը։
¾ Հետպայմանով ցիկլի մարﬕնը, եթե նույնիսկ ﬔկից ավելի օպերա-
տորներ է ներառում, ապա կարիք չկա առնելու BEGIN և END բառե-
րի ﬕջև, քանի որ REPEAT-ն այս դեպքում հանդիսանում է նաև ցիկլի
մարﬓի սկիզբ, իսկ UNTIL-ը՝ վերջ։
1. Բերեք ցիկլային բնույթ կրող որևէ գործընթացի օրինակ։
2. Պարաﬔտրով ցիկլի քանի՞ օպերատոր գիտեք։
3. Հնարավո՞ր է արդյոք, որ նախապայմանով ցիկլի մարﬕնը
ոչ ﬕ անգամ չիրագործվի. եթե՝ այո, ապա ո՞ր դեպքում։
4. Հետպայմանով ցիկլի մարﬕնն աﬔնաքիչը քանի՞ անգամ է կատար-
վում։
5. Որոշել [1;100] ﬕջակայքի 3-ին բազմապատիկ տարրերի գումարը.
ա) աճող պարաﬔտրով ցիկլի կիրառմամբ,
բ) նվազող պարաﬔտրով ցիկլի կիրառմամբ,
գ) նախապայմանով ցիկլի ﬕջոցով,
դ) հետպայմանով ցիկլի ﬕջոցով։
6. Հաշվել և արտածել այն երկնիշ թվերի գումարը, որոնք բազմապա-
տիկ են 3-ին։
91
§2.12. ՄԻԱՉԱՓ ԶԱՆԳՎԱԾՆԵՐ
Ծրագրավորման ﬔջ, բացի պարզ տիպերից, կիրառում են նաև, այս-
պես կոչված, կառուցվածքային տիպեր։ Սրանք բնորոշվում են տվալ տիպը
կազմող տարրերի բազմությամբ, այսինքն՝ կառուցվածքային տիպի փո-
փոխականը կամ հաստատունը ﬕշտ ﬕ քանի տարրերից է բաղկացած։
Կառուցվածքային տիպերից կուսուﬓասիրենք զանգվածները։ Զանգ-
վածի բաղադրիչները ﬕևնույն տիպի են։ Յուրաքանչյուր բաղադրիչ ունի
հերթական համար՝ ինդեքս, որի ﬕջոցով կարելի է դիﬔլ այդ տարրին։
Եթե զանգվածի տարրին դիﬔլիս ﬕայն ﬔկ ինդեքս է կիրառվում, ապա
այդ զանգվածն անվանում են ﬕաչափ։ Միաչափ զանգվածները հայտա-
րարում են հետևյալ կերպ.
VAR իդենտիֆիկատորներ ։ ARRAY[ինդեքսի ստորին եզր . . ինդեքսի վերին եզր] OF տիպ;
որտեղ ARRAY, OF բառերն առանցքային բառեր են, ինդեքսի ստորին և վերին
եզրերը՝ կարգային տիպի ﬔծություններ են (սովորաբար կիրառվում է ﬕ-
ջակայքային տիպը)։ Օրինակ՝
a։ARRAY[1..10] OF INTEGER;
x։ARRAY[-2..5] OF CHAR;
y։ARRAY[FALSE..TRUE] OF REAL;
Զանգվածի հայտարարման ﬔջ OF-ից հետո գրված տիպով բնորոշում
են զանգվածի տարրերի տիպը։ Օրինակ՝ որպես վերը հայտարարված a
զանգվածի տարրեր կարող են հանդես գալ հետևյալ թվերը՝ 8, -2, 0, 9, -5,
3, 3, 4, 100, -100, որտեղ 8-ը զանգվածի առաջին տարրն է կամ, որ նույնն է՝
a[1]-ը, -2-ը երկրորդ տարրը կամ՝ a[2]-ը, ... -100-ը զանգվածի 10-րդ տարրը՝
a[10]։
Ինչպես երևում է օրինակից՝ տարրի ինդեքսը գրվում է [ ]-երի ﬔջ։
Զանգվածը կարելի է հայտարարել նաև, օրինակ, հետևյալ կերպ.
TYPE zangvac=ARRAY[1..10] OF REAL;
VAR x։zangvac;
Զանգվածների ներմուծումը (արտածումը) կատարվում է ցիկլի ﬕջո-
ցով, որտեղ հերթով ներմուծվում (արտածվում) են x[1], x[2], ..., x[n] տարրերի
արժեքները։
92
Նկ. 2.14. Բլոկ-սխեմայում n տարր պարունակող ﬕաչափ զանգվածի տարրերի ներ-
մուծման (արտածման) գործընթացի օրինակ
Դիտարկենք հետևյալ խնդիրը. հաշվել իրական տիպի 20 տարր պարու-
նակող ﬕաչափ զանգվածի բացասական տարրերի քանակը։
Նկ. 2.15. Զանգվածի բացասական տարրերի քանակի հաշվման ալգորիթմ
Կազﬔնք խնդրի լուծման ծրագիրը.
PROGRAM Bac_Qanak;
TYPE vektor=ARRAY[1..20] OF REAL;
VAR x։vektor;
{զանգվածի հայտարարումը}
i,s։BYTE;
{i-ն ինդեքսի և s-ը պահանջվող քանակի համար է}
93
BEGIN
FOR i։=1 TO 20 DO
{1}
BEGIN WRITE(‘x[‘,i,’]=’); READ(x[i]);
{2}
END;
{3}
s։=0;
{4}
FOR i։=1 TO 20 DO
{5}
IF x[i]<0 THEN s։=s+1;
{6}
WRITELN(‘զանգ-ի բաց. տարրերի քանակը=’,s)
{7}
END.
{1}-ից {3} տողերում 20 իրական թվեր են ներմուծվում, որոնք հաջորդա-
բար փոխանցվում են x զանգվածի տարրերին։ Պահանջվող տարրերի քա-
նակը հաշվելու համար s-ը {4} տողում սկզբնարժեքավորվում է նախնական
0 արժեքով, այնուհետև {5}-{6}-ում հերթով ստուգվում են զանգվածի բոլոր
տարրերը, և, եթե բացասական (<0) տարրեր կան, ապա դրանց քանակը
հաշվարկվում է s։=s+1 հրամանով։ {7}-րդ տողում արտածվում է ստացված
քանակը։
Հետևյալ խնդրի ﬕջոցով որոշենք իրական տիպի 10 տարր պարունա-
կող ﬕաչափ զանգվածի ﬔծագույն տարրի արժեքը։
Նկ. 2.16. Զանգվածի ﬔծագույն արժեքի որոշման ալգորիթմ
94
Զանգվածի տարրերը ներմուծելուց հետո 5-րդ բլոկով կատարվել է
max=x[1] վերագրումը (կարելի է ասել՝ ենթադրվել է, թե ﬔծագույն տար-
րը x[1]-ն է՝ զանգվածի առաջին տարրը), այնուհետև 6, 7, և 8-րդ բլոկներով
հաջորդաբար ﬓացած տարրերը հաﬔմատվել են max-ի ﬔջ պահպանված
արժեքի հետ։ Եթե առավել ﬔծ արժեքով x[i] տարր է հայտնաբերվել, ապա
8-րդ բլոկով max-ի արժեքը փոխարինվել է այդ առավել ﬔծ արժեքով։ Ցիկ-
լի ավարտին max-ի ﬔջ կլինի փնտրված ﬔծագույն արժեքը։
Կազﬔնք ծրագիրը.
PROGRAM max;
CONST n=10;
VAR x։ARRAY[1..n] OF REAL;
i։BYTE; max։REAL;
BEGIN FOR i։=1 TO n DO READ(x[i]);
max։=x[1];
FOR i։=2 TO n DO IF x[i]>max THEN max։=x[i];
WRITELN(‘max=’,max։6։2)
END.
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Զանգվածի տարրերը համակարգչի հիշողությունում անընդﬔջ հա-
ջորդական տարածք են զբաղեցնում։
1. Ի՞նչ է զանգվածը։
2. Ո՞ր զանգվածներն են անվանում ﬕաչափ։
3. Հաշվել և արտածել տրված n տարր պարունակող ﬕաչափ
զանգվածի զույգ ինդեքս ունեցող տարրերի գումարը։
4. Հաշվել և արտածել տրված n տարր պարունակող ﬕաչափ զանգ-
վածի տրված [a; b] ﬕջակայքին պատկանող տարրերի գումարը։
5. Հաշվել և արտածել տրված n տարր պարունակող ﬕաչափ զանգվա-
ծի այն տարրերի արտադրյալը, որոնք բացարձակ արժեքով փոքր
են t թվից։
6. Հաշվել և արտածել տրված n ամբողջ տիպի տարր պարունակող
ﬕաչափ զանգվածի զույգ արժեք ունեցող տարրերի քանակը։
7. Հաշվել և արտածել տրված n տարր պարունակող ﬕաչափ զանգ-
վածի m բնական թվին բազմապատիկ տարրերի արտադրյալը։
95
§2.13. ԵՐԿՉԱՓ ԶԱՆԳՎԱԾՆԵՐ
Երկչափ զանգվածի յուրաքանչյուր տարրին դիﬔլու համար անհրաժեշտ
է երկու ինդեքս կիրառել։ Երկչափ զանգվածը պատկերացնելու համար
դիտենք դասարանի նստարանների շարքերը։ Ենթադրենք, դրանք դասա-
վորված են 4 շարքով, իսկ յուրաքանչյուր շարքում 3-ական սեղաններ կան։
Համարակալենք սեղաններն այնպես, որպեսզի այդ համարներով ﬕար-
ժեքորեն որոշվի սեղանի գտնվելու շարքը և շարքում դրա դիրքը։
S[1,1]
S[1,2]
S[1,3]
S[1,4]
S[2,1]
S[2,2]
S[2,3]
S[2,4]
S[3,1]
S[3,2]
S[3,3]
S[3,4]
Ինչպես տեսնում եք, շարքը բնորոշող համարը քառակուսի փակագծերի
ﬔջ առնված թվերից երկրորդն է, իսկ առաջինը՝ տվալ շարքում նստա-
րանի հերթական համարը։ Նման եղանակով կարգավորված տվալների
համախումբն անվանում են երկչափ զանգված։ Երկչափ զանգվածի տար-
րի առաջին ինդեքսը համարում են տարրի գտնվելու տողի, իսկ երկրոր-
դը՝ սյան համարը։ Նույն սկզբունքով կարելի է սահմանել նաև բազմաչափ
զանգվածները։
Երկչափ զանգվածներ հայտարարելիս պետք է նշել դրա երկու ինդեքս-
ների փոփոխման ﬕջակայքերը, օրինակ.
VAR x։ARRAY[1..10,1..20] OF REAL;
որտեղ փակագծերում 1..10-ը ցույց է տալիս առաջին ինդեքսի, իսկ 1..20-ը՝
երկրորդ ինդեքսի փոփոխման տիրույթը։
Երկչափ զանգվածների հետ կապված աշխատանքին առավել մոտիկից
ծանոթանալու նպատակով ﬕ քանի խնդիր լուծենք։
Խնդիր. տրված է 3 x 3 (3 տող և 3 սյուն) ամբողջ տիպի տարրեր պա-
րունակող երկչափ զանգված։ Հաշվել զանգվածի տրված k ամբողջ թվից
ﬔծ արժեք ունեցող տարրերի գումարը։
Ինչպես երևում է բլոկ-սխեմայից (նկ. 2.17.), երկչափ զանգված ներմու-
ծելու համար ﬔկը {4} մյուսի {3} ﬔջ ներդրված ցիկլեր են կիրառվել։ Ներ-
դրված ցիկլերն աշխատում են հետևյալ կերպ. նախ արտաքին {3} ցիկլի i
պարաﬔտրը ստանում է իր սկզբնական՝ 1 արժեքը, և ղեկավարումը տրվում
է ներդրված {4} ցիկլին, վերջինս ցիկլի սովորական, ﬔզ արդեն հայտնի
սխեմայով է աշխատում, այսինքն՝ i = 1 արժեքի դեպքում j-ն փոփոխվելով
1-ից 3՝ ներմուծվում են i-րդ (այս պահին՝ 1-ին) տողի տարրերը, այնուհետև
ղեկավարումը կրկին տրվում է {3} բլոկին՝ որտեղ i-ն աճելով ստանում է 2
արժեքը, և աﬔն ինչ ընթանում է այնպես, ինչպես i = 1 արժեքի դեպքում,
այսինքն՝ այժմ ներմուծվում են 2-րդ տողի տարրերը։ Նույնը կատարվում է
96
նաև i = 3-ի դեպքում։ Աշխատանքի այսպիսի ընթացքը հատկանշական է
ցանկացած ներդրված ցիկլի համար։
Նկ. 2.17. Երկչափ զանգվածում գումարի հաշվման ալգորիթմ
Այժմ կազﬔնք նկարագրված բլոկ-սխեմային համապատասխանող
ծրագիրը.
PROGRAM Matrici_Khndir;
CONST n=3;
TYPE matric=ARRAY[1..n,1..n] OF INTEGER;
VAR i,j։BYTE; k,s։INTEGER; x։matric;
BEGIN WRITE(‘k=’);READ(k);
FOR i։=1 TO n DO
{1}
FOR j։=1 TO n DO
{2}
READ(x[i,j]);
{3}
s։=0;
FOR i։=1 TO n DO
97
FOR j։=1 TO n DO
IF x[i,j]>k THEN s։=s+x[i,j];
WRITELN(‘k-ից մեծ տարրերի գումարը=’,s։10)
END.
Ծրագրում {1} և {2} ﬔկնաբանությամբ ցիկլերի ﬕջև BEGIN-ի անհրաժեշ-
տություն չկա, քանի որ {1}-ի ցիկլում ﬔկ օպերատոր կա՝ {2}-ը, իսկ {3}-ը
{2}-ի ﬕակ կրկնվող օպերատորն է։
Կազﬔնք հետևյալ խնդրի լուծման բլոկ-սխեման ու ծրագիրը ևս. տրված
է 4x4 իրական տիպի տարրեր պարունակող երկչափ զանգված։ Հաշվել և
արտածել զանգվածի փոքրագույն տարրի արժեքը։
Նախ կազﬔնք խնդրի լուծման բլոկ-սխեման։
Նկ. 2.18. Երկչափ զանգվածի փոքրագույն տարրի որոշման ալգորիթմ
Նախ min փոփոխականի ﬔջ պահվել է զանգվածի տարրերից առա-
ջինի արժեքը (ընդ որում, կարևոր չէ, թե որ տարրի արժեքն այս պահին
կդիտվի որպես փոքրագույն), որից հետո 6-րդ և 7-րդ բլոկներով կազմա-
վորված ներդրված ցիկլերի ﬕջոցով ենթադրյալ փոքրագույնի (min) հետ
հաﬔմատվել են զանգվածի ﬓացած բոլոր տարրերը և արժեքով առավել
98
փոքր տարրը 9-րդ բլոկում վերագրվել է min-ին։ Վերջում min-ի ﬔջ կﬓա
զանգվածի փոքրագույն տարրը, որի արժեքն արտածվել է 10-րդ բլոկով։
Կազﬔնք ծրագիրը.
PROGRAM Min_Matric;
CONST n=4;
VAR x։ARRAY[1..n,1..n] OF REAL;
i,j։BYTE; min։REAL;
BEGIN FOR i։=1 TO n DO
FOR j։=1 TO n DO
READ(x[i,j]);
min։=x[1,1];
FOR i։=1 TO n DO
FOR j։=1 TO n DO
IF x[i,j]<min THEN min։=x[i,j];
WRITE(‘min=’,min։10։2)
END.
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Զանգվածը, անկախ իր չափողականությունից, չի կարող 65520 բայ-
թից ավելի հիշողություն զբաղեցնել։
1. Կարո՞ղ են երկչափ զանգվածի առաջին տողի տարրերը լի-
նել սիմվոլային տիպի, իսկ ﬓացած տարրերը՝ օրինակ՝ ամ-
բողջ տիպի։
2. Եթե զանգվածի տարրը բնորոշվում է որպես x[a,b,c], ապա
զանգվածը.
ա) երկչափ է, բ) ﬕաչափ է, գ) եռաչափ է, դ) a*b*c չափի է։
3. Կարո՞ղ է արդյոք զանգվածի ինդեքսը լինել իրական թիվ։
4. Հաշվել և արտածել 2x3 տարր պարունակող երկչափ զանգվածի
տարրերի արտադրյալը։
5. Հաշվել և արտածել 3x3 տարր պարունակող երկչափ զանգվածի
դրական տարրերի գումարը։
6. Հաշվել և արտածել 3x3 տարր պարունակող երկչափ զանգվածի
կենտ արժեք ունեցող տարրերի արտադրյալը։
7. Հաշվել և արտածել 5x5 տարր պարունակող երկչափ զանգվածի
5-ին բազմապատիկ տարրերի քանակը։
99
3. ՀԵՌԱՀԱՂՈՐԴԱԿՑՄԱՆ
ՏԵԽՆՈԼՈԳԻԱՆԵՐ
§3.1. HTML-ՀԻՊԵՐՏԵՔՍՏԻ ՆՇԱԳՐՄԱՆ ԼԵԶՈՒ
11-րդ դասարանում WEB-էջեր ստեղծելու որոշ փորձառություն ձեռք բե-
րեցիք։ Դասընթացի այս բաժնում կծանոթանաք այդ նպատակին ուղղված
ﬕ շարք նոր հնարավորությունների։
Նախ համառոտ կրկնենք ձեզ հայտնի նյութը։
Հիշեցնենք, որ HTML- փաստաթուղթը սկսվում է <html> թէգով և ավարտ-
վում </html> թէգով։ Փաստաթուղթը բաղկացած է երկու հիﬓական մասից`
ծանուցման բաժին ու փաստաթղթի մարﬕն։ Ծանուցման բաժինը ներառվում
է <head> և </head> թէգերի ﬔջ։ Այս բաժինը ներառում է էջի վերնագիրը և
տեխնիկական այլ բնութագրեր։ Էջի վերնագիրը տրվում է <title> ... </title>
ﬔկնարկի և ավարտի թէգերի ﬕջև. սա ծանուցման բաժնի ﬕակ պարտա-
դիր թէգն է։
HTML-փաստաթղթի մարﬕնը ներառվում է <body> և </body> զույգ թէգերի
ﬔջ։ Օրինակ՝
<html>
<head><title> Փաստաթղթի նկարագրությունը </title></head>
<body>
Փաստաթղթի տեքստը
</body>
</html>
Ինչպես հիշում եք, HTML լեզվում վերնագրերի 6 մակարդակներ են նա-
խատեսված` h1, h2, ..., h6, որոնք տրվում են համապատասխան զույգ թէգե-
րի օգնությամբ, ընդ որում, <h1>-ը առաջին մակարդակի վերնագիր է և ունի
աﬔնաﬔծ տառաչափը, իսկ <h6>-ը` 6-րդ մակարդակի, որի տառաչափն
աﬔնափոքրն է։
Ստեղծվող փաստաթղթում վերնագրի հավասարեցման ձևը կարելի է
սահմանել align հատկանիշի ﬕջոցով` հետևյալ կերպ. right - ըստ աջ եզրի,
left - ըստ ձախ եզրի, center - ըստ կենտրոնի։
Օրինակ` <h1 align=”center”>վերնագիր</h1>։
HTML-փաստաթղթում պարբերությունները տրվում են զույգ` <p> և </p>
թէգերի օգնությամբ. օրինակ`
<p>առաջին պարբերություն</p><p>երկրորդ պարբերություն</p>
100
Պարբերության հավասարեցումը նույնպես իրականացվում է align հատ-
կանիշի օգնությամբ, որն այստեղ կարող է ընդունել հետևյալ արժեքներից
որևէ ﬔկը. left - ըստ ձախ եզրի, right - ըստ աջ եզրի, center - ըստ կենտրո-
նի, justify - ըստ աջ և ձախ եզրերի։ Oրինակ` <p align=”justify”>
Տեքստում տողադարձն իրականացվում է <br /> առանձին թէգով։
Պարբերություններն իրարից առանձնացնելու համար կարելի է նաև
դրանց ﬕջև հորիզոնական գիծ տանել` օգտվելով <hr /> թէգից։ Դրվող
գծի դիրքը, երկարությունն ու հաստությունը տրվում են թէգի հատկանիշ-
ներում, օրինակ`
<hr / align=”center” size=”2px” width=”20%”>
Հիշեցնենք, որ HTML-ում համարակալված տարրերով ցուցակներ ստեղծելու
համար հատուկ թեգեր են կիրառվում։ Նման ցուցակը պետք է սկսվի <ol>
և ավարտվի </ol> թէգերով, իսկ ցուցակի յուրաքանչյուր տարր պետք է նե-
րառվի <li> և </ li> թէգերի ﬕջև։
<ol> թեգում type հատկանիշով կարելի է նշել ցուցակի տարրերը համա-
րակալելու եղանակը.
z A - լատինական ﬔծատառերով` A,B,C...,
z a - լատինական փոքրատառերով` a,b,c...,
z I - հռոﬔական I,II,III... թվերով,
z i - հռոﬔական i,ii,iii... թվերով,
z 1 - արաբական թվերով` 1,2,3...,
Օրինակ` <օl type=”a”>։ Հնարավորություն կա նշելու նաև համարակալման
ելակետային արժեքը, որի համար կիրառվում է start հատկանիշը։ Օրինակ`
ըստ <ol type=”1” start=”5”> ։
Չհամարակալված ցուցակ ստեղծելու համար կիրառվում են <ul> և </ul>
թէգերը։ Այստեղ ևս ցուցակի յուրաքանչյուր տարր պետք է ներառված լինի
<li> և </ li> թէգերի ﬕջև։
<ul> թէգում type հատկանիշով որոշվում է նշիչի
արտաքին տեսքը։ Այն կարող է ընդունել հետևյալ արժեքներից որևէ ﬔկը.
circle - շրջանագիծ, square - քառակուսի։ Օրինակ` <ul type=”circle”> :
Հիշեցնենք, որ հիպերտեքստային հղում կարելի է ստեղծել <a> զույգ
թէգի օգնությամբ։ Այն ﬕայն ﬔկ պարտադիր հատկանիշ ունի` href-ը, որի
արժեքն այն փաստաթղթի հասցեն ու անվանուﬓ է, որին ուղղված է հղու-
մը։ Օրինակ`
<a href=”http։//www.edu.am”>նախարարություն</a> :
Էջում պատկեր տեղադրելու համար նախատեսված է <img> թէգը։ Մեկնար-
կի <img> թէգը պետք է ներառի src հատկանիշը, որի արժեքը տեղադրվող
պատկերի անվանուﬓ ու հասցեն է։ Օրինակ` <img src=”c։\picture.jpg”> :
Պատկերն այլ, անհրաժեշտ չափերով տեղադրելու համար <img> թէգում
նախատեսված են width և height հատկանիշները, որոնցով սահմանվում են
101
տեղադրվող պատկերի համապատասխան լայնությունն ու բարձրությունը։
Օրինակ`
<img src=”c։\patker.jpg” width=”90px” height=”80px”> :
Տեքստում պատկերի դիրքը կարելի է սահմանել align հատկանիշի օգնու-
թյամբ, որը կարող է ընդունել հետևյալ արժեքներից որևէ ﬔկը.
z bottom - պատկերի ստորին եզրը հավասարեցվում է տեքստային տո-
ղի հիմքին,
z middle - տողն անցնում է պատկերի կենտրոնով,
z top
- պատկերի վերին եզրը հավասարեցվում է տեքստային տողի
հիմքին,
z left
- պատկերը տեղադրվում է էջի ձախ մասում, իսկ հաջորդող
տեքստը` դրանից աջ,
z right
- պատկերը տեղադրվում է էջի աջ մասում, իսկ հաջորդող
տեքստը` դրանից ձախ։
Օրինակ` <img spr=”c։\patker.jpg” align=”top”> :
Ֆոնային պատկեր տեղադրելու համար կարելի է օգտվել body թէգի
background հատկանիշից, որի արժեքը պատկերի անվանուﬓ ու հասցեն
է։ Օրինակ`
<body background=”c։\patker1.gif”> :
Հիշեցնենք, որ HTML-ում աղուսակ կարելի է ստեղծել <table> զույգ թէգի
օգնությամբ։ Աղուսակում վերնագիրը տրվում է <caption>, իսկ տողերը` <tr>
զույգ թէգերի օգնությամբ։
Աղ ուսակի յուրաքանչյուր տող բջիջներ է պարունակում։ Վերնագրում
բջիջները տրվում են <th>, իսկ տողերում` <td> զույգ թէգերի կիրառմամբ։
Էկրանին աղուսակի հորիզոնական դիրքը տալու համար նախատես-
ված է align հատկանիշը, որը կարող է ընդունել հետևյալ արժեքներից որևէ
ﬔկը. left - ձախ եզրում, right - աջ եզրում, center - կենտրոնում։ Օրինակ`
<table align=”center”> :
<td> և <th> թէգերի դեպքում էլ align հատկանիշով կարելի է փոխել ար-
տածվող տվ ալների հորիզոնական հավասարեցման ձևը` դրան վերագրե-
լով հետևյալ արժեքներից որևէ ﬔկը. left - ըստ ձախ եզրի, right - ըստ աջ
եզրի, center - ըստ կենտրոնի։
valign հատկանիշի օգնությամբ կարելի է աղուսակի բջիջներում տվալ-
ների հավասարեցուﬓ իրականացնել ուղղաձիգ ուղղությամբ։ Այս հատ-
կանիշը կարող է ընդունել հետևյալ հնարավոր արժեքները. top - ըստ բջջի
վերին եզրի, bottom - ըստ բջջի ստորին եզրի, middle - ըստ բջջի կենտրոնի։
Աղ ուսակի լայնության ու բարձրության չափերը կարելի է սահմանել
width և height հատկանիշների ﬕջոցով։ Օրինակ`
<table width=”20px” height=”10px”> :
102
§3.2. CSS - ՈՃԵՐԻ ԿԱՍԿԱԴԱՅԻՆ ԱՂՅՈՒՍԱԿՆԵՐ
CSS-ը (Cascading Style Sheets) WEB-էջերի դիզայնը կարգավորելու տեխ-
նոլոգիա ընձեռող լեզու է, որն էականորեն հարստացնում է էջի արտա-
քին տեսքը ձևավորելու հնարավորություններն ու հեշտացնում դրա խմբա-
գրման գործընթացը։
Եթե հիպերտեքստի նշագրման HTML լեզուն հիﬓականում սահմանում է
WEB-էջի կառուցվածքը, ապա CSS-ը թույլատրում է ոճ սահմանել էջի յուրա-
քանչյուր օբյեկտի համար և այն պահպանել առանձին ֆայլում։ CSS-ի օգ-
նությամբ կարելի է կայքի էջերի որոշ պարաﬔտրեր (օրինակ՝ տառաչափը)
փոփոխել՝ անփոփոխ թողնելով սերվերում պահվող HTML փաստաթուղթը։
Անհրաժեշտության դեպքում կիրառողի բրաուզերը կարող է դիﬔլ CSS-ով
ստեղծված ոճերի ֆայլին և էջին անհրաժեշտ տեսք տալ։
CSS-ում սահմանվող ոճն ունի հետևյալ ընդհանուր գրելաձևը.
ընտրիչ
{
հատկանիշ1 ։ արժեք1;
հատկանիշ2 ։ արժեք2;
հատկանիշ3 ։ արժեք3;
}
Ընտրիչը HTML լեզվի թէգերի անվանուﬓերով կազմվող գրառում է, որը
որոշում է, թե WEB-էջի որ թէգերի համար և ինչպես է պետք կիրառել ձևա-
վոր փակագծերում բերված կանոնները։
Ընտրիչին հաջորդող {...} ձևավոր փակագծերում ընդգրկվում են ոճը
ներկայացնող կանոնները՝ բաժանված կետ-ստորակետերով (;)։ Կանոն-
ները տրվում են հատկանիշ։արժեք; գրառմամբ, որտեղ հատկանիշը WEB-էջի
դիզայնի որևէ բաղադրիչ է, արժեքը՝ տվալ բաղադրիչի հնարավոր ար-
ժեքներից որևէ ﬔկը։
CSS-ում ընտրիչ գրելու տարբեր ձևեր կան։ Ծանոթանանք ﬕ քանիսին.
z եթե ընտրիչում տրվի թէգի անվանումը, ապա սահմանված ոճը կկի-
րառվի WEB-էջում առկա բոլոր նման թէգերում։ Օրինակ՝ a {...} արտա-
հայտությամբ կազմված ոճը կկիրառվի տվալ WEB-էջում ընդգրկված
բոլոր հղուﬓերի դեպքում,
z եթե ընտրիչում իրարից ստորակետերով բաժանված ﬕ քանի թէգերի
անվանուﬓեր գրվեն, ապա սահմանված ոճը կկիրառվի թվարկված
բոլոր թէգերում։ Օրինակ՝ h1,h2,p {...} ոճը կկիրառվի WEB-էջում առկա
h1 և h2 մակարդակի բոլոր վերնագրերի ու պարբերությունների հա-
մար,
z եթե ընտրիչում իրարից բացատանիշերով բաժանված ﬕ քանի թէգե-
րի անվանուﬓեր գրվեն, ապա սահմանված ոճը կկիրառվի թվարկ-
103
ված հաջորդականությամբ ներդրվող վերջին բաղկացուցիչ թէգի
համար։ Օրինակ՝ p a {...} ոճը կկիրառվի պարբերություններում նե-
րառված բոլոր հղուﬓերի վրա։
z եթե ընտրիչը ներկայացվի ﬕայն * պայմանանշանով, ապա սահման-
ված ոճը կկիրառվի WEB-փաստաթղթի բոլոր տարրերի վրա։ Օրինակ՝
*{...} ոճը կկիրառվի WEB-էջի բոլոր թէգերի վրա։
CSS-ում կիրառվող շատ հրահանգներ նման են HTML-ի համապատաս-
խան հրահանգներին։ Օրինակ, WEB-էջի ֆոնի գույնը HTML-ում կարելի է
սահմանել <body bgcolor=”#66CDAA”>, իսկ CSS-ում՝ body {background-color։
#66CDAA;} արտահայտությամբ։
Ոճ սահմանող ինֆորմացիան կարող է պահպանվել ինչպես առանձին
ֆայլում, այնպես էլ WEB-էջի անﬕջական կոդում։ CSS-ով ստեղծված ոճերի
նկարագրություններն առանձին ֆայլում իմաստ ունի պահպանել այն դեպ-
քում, եթե դրանք պետք է կիրառվեն ﬕ քանի WEB-էջերի համար։ Այդ նպա-
տակով անհրաժեշտ է որևէ տեքստային խմբագրիչի ﬕջավայրում CSS
հրահանգներով նկարագրել անհրաժեշտ ոճերն ու ստեղծված ֆայլը պահ-
պանել WEB-սերվերի վրա, իսկ այդ ոճերը կիրառող WEB-էջերի կոդերում
դիﬔլ (հղում անել) այդ ֆայլին։
Այժմ HTML-ում CSS ոճերը կիրառելու երեք ﬔթոդներ քննարկենք։
Մեթոդ 1 (In-line - ներկառուցված). ոճերի աղուսակն այս դեպքում նկա-
րագրվում է HTML փաստաթղթի որևէ առանձին թէգի մարﬓում՝ CSSstyle
հատկանիշի օգնությամբ։ Այս դեպքում ոճերի աղուսակի կանոնների ազ-
դեցության տիրույթը տվալ թէգն է։ Օրինակ՝ հետևյալ HTML ծրագրային
կոդում WEB-էջի ֆոնի գույնը սահմանվում է կարﬕր.
<html>
<head>
<title>Example</title>
</head>
<body style=”background-color։red;”>
<p>This is a red page</p>
</body>
</html>
Մեթոդ 2 (ներքին) - ոճերի աղուսակը նկարագրվում է HTML փաստաթղ-
թում, <style> և </style> թէգերի ﬕջև, որոնք իրենց հերթին գտնվում են փաս-
տաթղթի < head > և </head > թէգերի ﬕջև։ Ոճերի աղուսակի սահմանվող
կանոնների ազդեցության տիրույթն այժմ ամբողջ փաստաթուղթն է։ Այս
դեպքում WEB-էջի ֆոնի կարﬕր գույնը կսահմանվի հետևյալ կերպ.
104
<html>
<head>
<title>Example</title>
<style type=”text/css”>
body {background-color։ red;}
</style>
</head>
<body>
<p>This is a red page</p>
</body>
</html>
Մեթոդ 3 (արտաքին) - ոճերի աղուսակը նկարագրվում է css ընդլայն-
մամբ առանձին ֆայլում։ HTML փաստաթղթից տվալ ֆայլի հղուﬓ իրակա-
նացվում է <link> թէգի օգնությամբ, որը տեղակայվում է header բաժնում,
այսինքն՝ <head> և </head> թէգերի ﬕջև.
<link rel=”stylesheet” type=”text/css” href=”url”>
Այս թէգի առաջին երկու պարաﬔտրերը պահեստավորված անվանում-
ներ են, որոնք բրաուզերին հայտնում են, որ այս էջում CSS-ի ֆայլ է օգտա-
գործվելու։ Երրորդ՝ href պարաﬔտրը հղում է կատարում ոճերի աղուսակը
պարունակող ֆայլին։ Օրինակ՝ ոճերի աղուսակը պահպանող style.css ֆայ-
լին կարելի է հղում կատարել HTML կոդի հետևյալ տողով.
<link rel=”stylesheet” type=”text/css” href=”style/style.css”/>
Այս հղումը բրաուզերին հուշում է, որ WEB-էջը խմբագրելու համար պետք
է օգտագործի style.css ֆայլում պահպանված կանոնները։ Նման մոտեցումը
հնարավորություն է տալիս բավականաչափ ժամանակ տնտեսել, եթե ոչ
ﬔկ, այլ WEB-կայքի բազմաթիվ էջերում է անհրաժեշտ փոփոխություններ
մտցնել (նկ. 3.1.)։ Օրինակ, եթե WEB-կայքի ﬕ քանի էջերում է անհրաժեշտ
ֆոների գույները փոխել, ապա կարիք չկա համապատասխան բոլոր էջե-
րի HTML փաստաթղթերում փոփոխություններ մտցնել. հերիք է փոփոխել
ﬕայն ոճերի աղուսակի կոդը։
style.css
HTML փաստաթղթեր
Ոճերի արտաքին աղուսակում առկա
փոփոխություններն ազդում են բոլոր
HTML փաստաթղթերի վրա:
Նկ. 3.1. HTML փաստաթղթերի հղուﬓերը ոճերի ﬕևնույն աղուսակին
105
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ CSS-ում կարելի է ﬔկնաբանություններ ավելացնել, դրանք /* և */
պայմանանշանների ﬕջև առնելով։
¾ Եթե ոճերի աղուսակը պահպանող ֆայլն այն սերվերի վրա է, որ-
տեղ պահպանվում են նաև տվալ ֆայլին հղում ունեցող WEB-փաս-
տաթղթերը, ապա <link> թէգի հref պարաﬔտրը կարող է պարունակել
այդ ֆայլի հարաբերական հասցեն, հակառակ դեպքում` լրիվ հասցեն։
1. Ի՞նչ է CSS-ը։
2. CSSHTML-ում կիրառելու ի՞նչ ﬔթոդներ գիտեք։
3. Ոճերի աղուսակը արտաքին ֆայլում նկարագրելու դեպ-
քում HTML փաստաթղթից CSS ֆայլին կատարվող հղումը
որտե՞ղ է պետք տեղադրել։
Լաբորատոր աշխատանք
3.1
Էջերում ոճերի տեղակայման
ﬕջոցները
CSS-ին առնչվող լաբորատոր աշխատանքները կատարելուց առաջ My
Documents–ի ձեր դասարանին հատկացված թղթապանակում ենթաթղ-
թապանակ ստեղծեք։ Դրա համար բացեք ձեր դասարանին հատկացված
թղթապանակը, մնիկի ցուցիչը տեղադրեք թղթապանակի որևէ ազատ
մասում ու սեղﬔք աջ սեղմակը։ Բացված ենթատեքստային ﬔնյուից ընտ-
րեք New, ապա Folder հրամանները։ Ներմուծեք ստեղծված թղթապանա-
կի CSS_* անվանումը, որտեղ *–ի փոխարեն ներմուծեք ձեր դասամատյանի
համարը։
1. Ընտրեք համակարգիչ պատկերող որևէ նկար ու այն computer.png ան-
վանումով պահպանեք ստեղծված թղթապանակում։
2. Start գլխավոր ﬔնյուի Programs ենթաﬔնյուի Accessories ենթաﬔնյուի
Notepad հրամանով համանուն տեքստային խմբագրիչի ﬕջավայր
մտեք։
3. Ներմուծեք հետևյալ կոդը.
106
<html>
<head>
<title>lab_2_8</title>
<link rel=”stylesheet” type=”text/css” href=”style.css”/>
</head>
<body>
<table >
<tr>
<td colspan=”2”>
<h1>ՀԱՄԱԿԱՐԳԻՉ </h1>
<h1>Ուսուﬓական կենտրոն</h1>
</td>
</tr>
<tr height=”500”>
<td width=”200”>
<ol type=1>
<li><a href=”#”> MS Word </a></li>
<li><a href=”#”> MS Excel</a></li>
</ol>
</td>
<td>
<img src=”computer.png” >
<h2>Microsoft Office</h2>
<p>Այս էջը նվիրված է գրասենյակային Microsoft Office
բազմաֆունկցիոնալ փաթեթին:</p>
</td>
</tr>
<tr>
<td colspan=”2” >
<h3>Copyright © 2012</h3>
</td>
</tr>
</table>
</body>
</html>
4. Ներմուծված փաստաթուղթը պահպանելու նպատակով ընտրեք ﬔ-
նյուի տողի File ենթաﬔնյուի Save As հրամանը։
5. Բացված պատուհանի Save as type դաշտում ընտրեք All files տարբերա-
կը։
6. Հայերենով գրված տեքստը պահպանելու համար Encoding դաշտում
ընտրեք UTF-8 տարբերակը։
7. Save in դաշտում ընտրեք My Documents–ի ձեր դասարանին հատկաց-
ված թղթապանակը։
8. FIle Name դաշտում ներմուծեք Index.html անվանումը։
107
9. Ընտրեք Notepad տեքստային խմբագրիչի ﬔնյուի տողի File ենթաﬔ-
նյուի New հրամանը։
10.
Ներմուծեք հետևյալ կոդը.
table, td{
border: 1px solid green;
}
11.
Ներմուծված փաստաթուղթը պահպանելու նպատակով ընտրեք ﬔ-
նյուի տողի File ենթաﬔնյուի Save As հրամանը։
12.
Save in դաշտում ընտրեք My Documents–ի ձեր դասարանին հատկաց-
ված թղթապանակը։
13.
FIle Name դաշտում ներմուծեք Style.css անվանումը։
14.
Start գլխավոր ﬔնյուի Internet Explorer հրամանով կամ
գործիքով
Internet Explorer-ի ﬕջավայր մտեք։
15.
Ընտրեք ﬔնյուի տողի File ենթաﬔնյուի Open հրամանը։
16.
Սեղﬔք Browse կոճակը, բացված պատուհանի Look in դաշտում ընտ-
րեք Notepad խմբագրիչի ﬕջավայրում ձեր ստեղծած Index.html ֆայլն
ու սեղﬔք Open կոճակը։
17.
Ֆայլի հասցեին վերաբերող հարցումը հաստատեք OK կոճակով և էկ-
րանին կհայտնվի ոճերի աղուսակ կիրառող ձեր առաջին WEB-էջը.
18. Ավարտեք աշխատանքը՝ տեքստային խմբագրիչն ու բրաուզերը փա-
կելով։
108
§3.3. ԳՈՒՅՆ ԵՎ ՖՈՆ
CSS-ը հնարավորություն է տալիս հեշտությամբ սահմանել WEB-էջի տար-
րերի գույնն ու ֆոնը։ Ընդ որում, ֆոնը կարելի է տալ նաև պատկերի տես-
քով։
WEB-էջի տարրերի ու ֆոնի գույնը սահմանելու նպատակով CSS-ի ﬕ
շարք հատկանիշներ դիտարկենք։
color հատկանիշը նկարագրում է տարրի գույնը։ Օրինակ, եթե անհրա-
ժեշտ է փաստաթղթի h1 մակարդակի բոլոր վերնագրերը սահմանել կար-
ﬕր, ապա HTML-ի <h1> տարրի համար կարելի է գրել.
h1 {color։#ff0000;}
background-color հատկանիշը նկարագրում է տարրի ֆոնի գույնը։ Քա-
նի որ HTML փաստաթղթի ողջ պարունակությունը ներառվում է <body> թէ-
գում, ապա ամբողջ էջի ֆոնի գույնը փոփոխելու համար background-color
հատկանիշը պետք է կիրառել <body> թէգի վրա։ Այդ հատկանիշը կարելի
է կիրառել նաև այլ տարրերի համար, այդ թվում վերնագրերի ու տեքս-
տի վրա։ Ստորև բերված օրինակում ֆոնի տարբեր գույներ են կիրառվել
<body> և <h1> թէգերի վրա։
body {background-color։#FFCC66;}
h1 {color։ #990000;background-color։#FC9804;}
Բերված օրինակում <h1>-ի համար երկու հատկանիշներ են կիրառվել
(իրարից կետ-ստորակետով բաժանված)։
background-image հատկանիշն օգտագործվում է ֆոնային պատկեր տե-
ղադրելու համար։ Դրա համար անհրաժեշտ է <body> թէգում կիրառել back-
ground-image հատկանիշը և նշել ֆոնային նկարի անունն ու հասցեն։ Եթե
պատկերը տեղադրելու եղանակ չտրվի, ապա պատկերը հորիզոնական և
ուղղաձիգ ուղղություններով կրկնվելով՝ կծածկի ողջ էկրանը՝ սկսած վե-
րին ձախ անկունից։
Ստորև բերված օրինակում որպես ֆոնային պատկեր տեղադրվել է nk1.
gif նկարը։
body { background-color։ #FFCC66;
background-image։url(nk1.gif);}
h1 {color։ #990000;background-color։ #FC9804;}
Ֆոնային պատկերը տեղադրելու գործընթացը կարգավորվում է back-
ground-repeat հատկանիշով։ Աղուսակ 3.1-ում այս հատկանիշի 4 արժեքներ
են բերվել։
Օրինակ՝ ֆոնի պատկերը ﬕայն հորիզոնական ուղղությամբ կրկնե-
լու համար անհրաժեշտ է վերը բերված օրինակի կոդում background-image
հատկանիշից հետո ավելացնել background-repeat։ repeat-x; հրահանգը։
109
Աղուսակ 3.1
Արժեքը
Նկարագրությունը
background-repeat։ repeat-x
Պատկերը կրկնվում է հորիզոնական ուղղությամբ
background-repeat։ repeat-y
Պատկերը կրկնվում է ուղղաձիգ ուղղությամբ
background-repeat։ repeat
Պատկերը կրկնվում է հորիզոնական և ուղղաձիգ ուղղու-
թյուններով
background-repeat։ no-repeat
Պատկերը չի կրկնվում
background-attachment հատկանիշը հնարավորություն է տալիս ֆոնի
պատկերն անշարժացնել WEB-էջում, կամ էջի պարունակությանը համըն-
թաց շարժել։ Աղուսակ 3.2-ում այս հատկանիշի 2 արժեքներ են բերվել։
Աղուսակ 3.2
Արժեքը
Նկարագրությունը
Background-attachment։ scroll
Պատկերը տեղաշարժվում է էջի պարունակու-
թյանը համընթաց
Background-attachment։ fixed
Պատկերն անշարժ է
background-position հատկանիշը հնարավորություն է տալիս սահմանե-
լու ֆոնի պատկերի կոորդինատները (ֆոնի պատկերի դիրքը չսահմանելու
դեպքում այն տեղադրվում է էկրանի վերին ձախ անկունում)։ Հատկանիշի
արժեքը կարելի է նշել չափման որևէ ﬕավորով (background-position։ 3cm 4cm
օրինակի դեպքում պատկերը կտեղադրվի վերին ձախ անկունից 3սմ ձախ
և 4սմ ներքև), էկրանի լայնության տոկոսներով (background-position։ 40% 30%
օրինակի դեպքում պատկերը կտեղադրվի էկրանի վերին ձախ անկունից
էկրանի լայնության 40%-ի չափով աջ և 30%-ի չափով ներքև)։ Ֆոնի պատկե-
րի կոորդինատները սահմանելիս կարելի է կիրառել հատկանիշի հետևյալ
արժեքները. top (վերին), bottom (ստորին), center (կենտրոն), left (ձախ), right
(աջ)։ Օրինակ՝ background-position։right bottom հրահանգի համաձայն պատ-
կերը կտեղադրվի էկրանի ստորին աջ անկունում։
background հատկանիշի ﬕջոցով կարելի է ﬕ շարք հատկություններ
առավել համառոտ ձևակերպել։ Օրինակ՝
background-color։ #FFCC66;
background-image։ url(nk1y.gif);
background-repeat։ no-repeat;
background-attachment։ fixed;
background-position։ right bottom;
հրահանգները կարելի է ﬕավորել հետևյալ հրահանգի ﬔջ.
background։ #FFCC66 url(nk1.gif) no-repeat fixed right bottom;
110
Այս տարրն ունի հատկանիշների հետևյալ հերթականությունը.
z [background-color]
z [background-image]
z [background-repeat]
z [background-attachment]
z [background-position]
1. CSS-ում տարրերի ու ֆոնի գույնը սահմանելու ի՞նչ հատկա-
նիշներ գիտեք։
2. background-repeat հատկանիշի ի՞նչ արժեքներ գիտեք։
3. CSS-ը ֆոնի դիրքը սահմանելու ի՞նչ եղանակներ գիտեք։
Լաբորատոր աշխատանք
3.2
color և background
հատկանիշների կիրառում
1. Ֆոնի համար որևէ նկար ընտրեք ու այն fon.png անվանումով պահ-
պանեք ձեր ստեղծած CSS թղթապանակում։
2. Start գլխավոր ﬔնյուի Programs ենթաﬔնյուի Accessories ենթաﬔնյուի
Notepad հրամանով բացեք համանուն տեքստային խմբագրիչը։
3. Ընտրեք Notepad տեքստային խմբագրիչի ﬔնյուի տողի File ենթաﬔ-
նյուի Open հրամանն ու բացեք ձեր ստեղծած Style.css ֆայլը։
4. Ավելացրեք հետևյալ կոդը.
body{
background-image: url(fon.png);
background-repeat:repeat;
}
table{
width:900px;
background-color:#66CDAA;
}
111
5. Խմբագրիչի ﬔնյուի տողի File ենթաﬔնյուի Save հրամանով պահպա-
նեք խմբագրված փաստաթուղթը։
6. Մտեք որևէ բրաուզերի ﬕջավայր։ Ընտրեք Notepad խմբագրիչի ﬕ-
ջավայրում ձեր ստեղծած Index.html ֆայլն ու մնիկի ձախ սեղմակի
կրկնակի սեղմում կատարելով՝ էկրանին կտեսնեք ստորև բերված
WEB-էջը՝ ձեր ընտրած ֆոնի նկարով.
7. Ավարտեք աշխատանքը՝ փակելով տեքստային խմբագրիչն ու բրաու-
զերը։
§3.4. ՏԵՔՍՏԻ ՁԵՎԱՎՈՐՈՒՄ
WEB-էջի տեքստը ձևավորելու գործընթացում տառաշարի պարաﬔտրե-
րը ճիշտ սահմանելը կարևոր նշանակություն ունի։ CSS-ի այդ նպատակին
ուղղված որոշ հատկանիշներ ուսուﬓասիրենք։
font-family հատկանիշը հնարավորություն է տալիս WEB-էջի կամ դրա
առանձին տարրերի համար տառատեսակների ցանկալի առաջնահերթու-
թյուն սահմանել։ Եթե թվարկված տառատեսակներից առաջինը կայքից
օգտվողի համակարգչում չկա, ապա փորձ է արվում կիրառել սահմանված
առաջնահերթության ցուցակի հաջորդ հերթական տառատեսակը և այլն։
Օրինակ.
h1 {font-family։ arial, “times new roman”, sans-serif;}
հրահանգի արդյունքում <h1> վերնագրերը կցուցադրվեն arial տառատե-
սակով։ Կայքից օգտվողի համակարգչում այդ տառատեսակի բացակայու-
112
թյան դեպքում կօգտագործվի times new roman տառատեսակը։ Առաջին
երկու տառատեսակների բացակայության դեպքում՝ sans-seif ընտանիքի
տառատեսակը։ Տառատեսակի անվան ﬔջ բացատանիշերի առկայության
դեպքում այն պետք է առնել չակերտների ﬕջև։
font-style հատկանիշով սահմանվում է տառաշարի ձևը՝ normal, italic կամ
oblique։ Վերջինս կառուցվածքով normal ձևն է՝ որոշակի թեքությունով։
Օրինակ՝
h2 {font-family։ arial, serif; font-style։italic;}
հրահանգի արդյունքում <h2> վերնագրերը կցուցադրվեն arial կամ serif տա-
ռատեսակով և կընդունեն շեղ ձև։
font-weight հատկանիշով սահմանվում է տառաշարի հաստության աս-
տիճանը։ Հատկությունը կարող է ընդունել normal և bold արժեքներից որևէ
ﬔկը։ Օրինակ՝
p {font-family։ arial, verdana, sans-serif;}
td {font-family։ arial, verdana, sans-serif; font-weight։bold;}
Որոշ բրաուզերներ կարող են աշխատել նաև թվային արժեքների հետ։
Այս դեպքում տառաշարի հաստության աստիճանը կարող է ընդունել 100,
200, 300, ..., 900 արժեքներից որևէ ﬔկը։
font-size հատկանիշով սահմանվում է տառաշարի չափը, որը տրվում է
բացարձակ և հարաբերական ﬔծություններով։
Բացարձակ ﬔծությունը կարելի է նշել հետևյալ պահեստավորված բա-
ռերից որևէ ﬔկով.
z xx-small - փոքրագույն,
z x-small - շատ փոքր,
z small - փոքր,
z medium - ﬕջին,
z large - ﬔծ,
z x-large - շատ ﬔծ,
z xx-large - ﬔծագույն։
Օրինակ՝ p{font-size։ x-large;}։
Բացարձակ ﬔծությունը կարելի է նաև նշել՝ օգտագործելով CSS-ում չա-
փի ընդունված ﬕավորները՝ px (փիքսել), pt (կետաչափ), in (դյույմ), cm (սան-
տիﬔտր), mm (ﬕլիﬔտր)։ Օրինակ՝ p{font-size։ 14pt;}։
Չափի հարաբերական ﬔծությունը կարելի է տալ հետևյալ պահեստա-
վորված բառերից որևէ ﬔկով.
z larger - սահմանված չափից ﬔծ,
z smaller - սահմանված չափից փոքր,
կամ սահմանված չափի տոկոսով (%)։ Օրինակ՝ p{font-size։ 200%;}, h{font-
size։larger;}։
113
Այստեղ ևս font հատկանիշի ﬕջոցով կարելի է ﬕ շարք հատկանիշներ
գրել կրճատ տեսքով։ Օրինակ՝
p {
font-style։ italic;
font-weight։ bold;
font-size։ 30px;
font-family։ arial, sans-serif;
}
հրահանգները կարելի է ﬕավորել ﬔկ հրահանգի ﬔջ.
p{font։ italic bold 30px arial, sans-serif;}
Այժմ ծանոթանանք CSS-ի տեքստ ձևավորելու որոշ հնարավորություն-
ներին։
text-indent հատկանիշը հնարավորություն է տալիս սահմանել պարբե-
րության առաջին տողի սկիզբը (նման հնարավորություն HTML-ում չկա)։
Օրինակ՝ p {text-indent։ 2cm;} հրահանգի արդյունքում բոլոր պարբերու-
թյունները կսկսվեն 2 սմ խորքից։
text-align հատկանիշը հնարավորություն է տալիս սահմանել տեքստը
հավասարեցնելու եղանակը. left (ըստ ձախ եզրի), right (ըստ աջ եզրի), cen-
tred (ըստ կենտրոնի) կամ justify (ըստ ձևաչափի)։
Օրինակ՝ td {text-align։left;} հրահանգի արդյունքում աղուսակի բջիջների
պարունակությունները կհավասարեցվեն ըստ ձախ եզրի։
text-decoration հատկանիշը նախատեսված է տեքստը գեղարվեստորեն
ձևավորելու համար։ Այն կարող է ընդունել հետևյալ արժեքներից որևէ ﬔ-
կը.
z none — գեղարվեստական ձևավորում չի իրականացվում,
z underline — յուրաքանչյուր տող ընդգծվում է ներքևից,
z overline — յուրաքանչյուր տող ընդգծվում է վերևից,
z line-through —յուրաքանչյուր տող պատկերվում է ջնջված,
z blink — տեքստը թարթում է։
Օրինակ՝
h1 {text-decoration։underline;}
h2 {text-decoration։overline;
}
հրահանգի արդյունքում <h1> մակարդակի վերնագրերը կլինեն ընդգծված
ներքևից, իսկ <h2> վերնագրերը՝ վերևից։
letter-spacing հատկանիշը հնարավորություն է տալիս սահմանել տառե-
րի ﬕջև ցանկալի հեռավորությունները։ Օրինակ՝ p {letter-spacing։ 4px;} հրա-
հանգի արդյունքում պարբերությունների տառերի ﬕջև 4 փիքսել հեռավո-
րություն կսահմանվի։
114
word-spacing հատկանիշը հնարավորություն է տալիս սահմանել տեքս-
տի բառերի ﬕջև ցանկալի հեռավորությունը։ Օրինակ՝ h1{word-spacing։2mm}
հրահանգի արդյունքում <h1> մակարդակի վերնագրերում բառերի ﬕջև
2 մմ հեռավորություն կսահմանվի։
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ font-variant հատկանիշը կարող է ընդունել normal կամ small-caps ար-
ժեքներից որևէ ﬔկը։ Ընդ որում, small-caps-ի դեպքում ստեղների
ստորին դիրքերում գտնվող տառերի փոխարեն փոքր չափի ﬔծա-
տառեր կկիրառվեն։
1. CSS-ում տառաշարի հետ աշխատելու ի՞նչ հատկանիշներ
գիտեք։
2. CSS-ում տեքստ ձևավորելու ի՞նչ հատկանիշներ գիտեք։
Լաբորատոր աշխատանք
3.3
Տեքստի ձևավորում
1. Start գլխավոր ﬔնյուի Programs ենթաﬔնյուի Accessories ենթաﬔնյուի
Notepad հրամանով բացեք համանուն տեքստային խմբագրիչը։
2. Ընտրեք Notepad տեքստային խմբագրիչի ﬔնյուի տողի File ենթաﬔ-
նյուի Open հրամանը և բացեք ձեր ստեղծած Style.css ֆայլը։
3. Ֆայլի վերջում ավելացրեք հետևյալ կոդը.
h1{
font-weight: bold;
font-size: 30px;
color: #ffffff;
text-align:center;
}
115
h2{
font-style: italic;
font-size: 22px;
color: #006400;
}
h3{
font-size: 16px;
color: green;
text-align:center;
}
p,li{
font-size: 20px;
4. Խմբագրիչի ﬔնյուի տողի File ենթաﬔնյուի Save հրամանով պահպա-
նեք խմբագրված փաստաթուղթը։
5. Մտեք որևէ բրաուզերի ﬕջավայր։ Ընտրեք Notepad խմբագրիչի ﬕ-
ջավայրում ձեր ստեղծած Index.html ֆայլն ու մնիկի ձախ սեղմակի
կրկնակի սեղմում կատարեք։ Եթե աﬔն ինչ ճիշտ եք կատարել, ապա
էկրանին կտեսնեք ստորև բերված WEB-էջը.
6. Ավարտեք աշխատանքը՝ փակելով տեքստային խմբագրիչն ու բրաու-
զերը։
116
§3.5. ԲԼՈԿԱՅԻՆ ՄՈԴԵԼ
Բրաուզերները HTML-փաստաթղթի յուրաքանչյուր թէգ մշակում են որ-
պես որոշակի բովանդակությամբ ուղղանկուն տիրույթ, որը կարող է պա-
րունակել տեքստ, պատկերներ, այլ թէգեր և այլն։ WEB-էջը ձևավորվում է
տարբեր հատկություններ ունեցող նման ուղղանկ ուն բլոկներով (նկ. 3.2.)։
WEB-էջի ձևավորման այսպիսի մոդելն անվանում են բլոկային։
Արտաքին բացատ
Եզրագծային շրջանակ
Ներքին բացատ
Պարունակություն
Նկ. 3.2. Տարրի բլոկը
Բլոկային մոդելում արտաքին բացատը դատարկ տարածք է, որը տար-
րերն իրարից տարանջատում է։ Նման արտաքին տարածք է, օրինակ՝
պարբերություններն իրարից բաժանող ﬕջակայքը։
Եզրագծային շրջանակը (այսուհետ՝ շրջանակ) տարրը շրջափակող եզ-
րագիծն է։
Ներքին բացատը պարունակության և եզրագծի ﬕջև առկա ազատ տա-
րածքն է։
Պարունակությունը տարրի բովանդակությունն է։
Արտաքին և ներքին բացատները հատկություններով տարբերվում են։
Եթե տարրի ֆոնը (background) սահմանվի, օրինակ՝ դեղին, ապա թե՛ բո-
վանդակության տարածքը և թե՛ ներքին բացատը դեղին գույն կստանան,
ﬕնչդեռ արտաքին բացատը, դրսում գտնվելով, ﬕշտ «թափանցիկ» կլինի
(նկ. 3.3.)։
Արտաքին և ներքին բացատները դատարկ տարածություն են ստեղծում
բլոկի «ﬕջուկի»՝ տարրի շուրջը։ Տարրի պարունակության և շրջանակի ﬕ-
ջև բացատ ստեղծելու համար օգտագործվում է padding, իսկ արտաքին
բացատի համար՝ margin հատկությունները։ Յուրաքանչյուր տարրի հա-
մար առանձին-առանձին կարելի է նշել իր
117
արտաքին բացատի չափերը՝
margin-top
վերևից,
margin-right
աջից,
margin-bottom
ներքևից,
margin-left
ձախից
և ներքին բացատի չափերը՝
padding-top
վերևից,
padding -right
աջից,
padding -bottom
ներքևից,
padding -left
ձախից։
Արտաքին բացատ
Եզրագծային շրջանակ
Ներքին բացատ
Պարունակություն
Նկ. 3.3. Տարրի բլոկի օրինակ
Օրինակ՝ արտաքին բացատի չափերը կարելի է նշել հետևյալ կերպ.
margin-top։ 20px;
margin-right։ 15px;
margin-bottom։ 20px;
margin-left։ 30px;
Չափերի նույն տվալները կարելի է սահմանել նաև հետևյալ կրճատ
գրելաձևով.
margin։ 20px 15px 20px 30px;
Ներքին բացատի չափերը padding-ի ﬕջոցով նույնպես սահմանվում է
padding-top։ 20px;
padding-right։ 30px;
padding-bottom։ 40px;
padding-left։ 50px;
օրինակի համաձայն. այստեղ ևս կարելի է կրճատ գրելաձև կիրառել.
118
padding։ 20px 30px 40px 50px;
Օրինակ՝ h1 և h2 մակարդակի վերնագրերի համար սահմանենք ֆոնի
գույներն ու վերնագրերի շուրջը եղած դաշտերի (ներքին բացատի) չափե-
րը.
h1 {
background։ yellow;
padding։ 20px 30px 40px 50px;
}
h2 {
background։ orange;
padding-left։120px;
}
Տարրի բլոկային մոդելում շրջանակը տարվում է սովորական գծով և տար-
րը բոլոր կողﬔրից եզրագծելով՝ նշում է դրա սահմանները։
CSS-ում շրջանակները տրվում են border հատկանիշի ﬕջոցով, որտեղ
նշվում են տարվող գծի հաստությունը, ձևն ու գույնը՝ համապատասխա-
նաբար border-width, border-style և border-color հատկանիշներով։
border-width հատկանիշը կարող է ընդունել thin, medium, thick արժեքնե-
րից որևէ ﬔկը կամ որևէ թվային արժեք՝ փիքսելներով (նկ. 3.4.)։
Նկ. 3.4. Շրջանակի գծի հաստության օրինակներ
Շրջանակի համար տրվող border-color հատկանիշը կարող է գույնի հա-
մար ընդունելի որևէ արժեք ստանալ, օրինակ, “#123456”, “rgb(123,123,123)”
կամ “yellow”։
Շրջանակի border-style հատկանիշով սահմանվող գծի տիպը կարող է
ընդունել solid, dotted, dashed, double, groove, ridge, inset կամ outset արժեքներից
որևէ ﬔկը (նկ. 3.5.)։ Եթե շրջանակի տիպը չի սահմանվել, ապա border-style
հատկանիշը կընդունի solid արժեքը։
Նկ. 3.5. Շրջանակի տիպեր
119
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Եթե margin և padding հատկանիշներում նշվի իրարից բացատանի-
շով բաժանված երկու արժեք, ապա դրանցից առաջինը կվերագրվի
դաշտի վերին և ստորին, իսկ երկրորդը` ձախ և աջ չափերին։ Իսկ
եթե նշվի երեք արժեք, ապա դրանցից առաջինը կվերագրվի դաշտի
վերին, երկրորդը` ձախ և աջ, երրորդը` ստորին չափերին։
1. Ի՞նչ է բլոկային մոդելը։
2. CSS-ում margin հատկանիշով ի՞նչ պարաﬔտրեր են սահ-
մանվում։
3. CSS-ում padding հատկանիշով ի՞նչ պարաﬔտրեր են սահ-
մանվում։
4. Շրջանակի ի՞նչ պարաﬔտրեր գիտեք։
§3.6. ՏԱՐՐԻ ՉԱՓԻ ՈՒ ԴԻՐՔԻ ՍԱՀՄԱՆՈՒՄԸ
HTML-ում սովորեցինք աղուսակների օգնությամբ հնարավորինս կար-
գավորել WEB-էջի դիզայնը։ Այդ առումով CSS-ը առավել ﬔծ հնարավորու-
թյուններ է ընձեռում։ Այստեղ հնարավորություն ունենք ճշգրտորեն սահ-
մանելու տարրերի չափերն ու դիրքը։
Տարրի լայնությունը կարելի է սահմանել width, իսկ բարձրությունը՝
height հատկանիշով։ Այս հատկանիշները կարող են ընդունել auto արժեք,
որի դեպքում տարրի չափը որոշվում է իր բովանդակությամբ (տարրի չա-
փը սահմանելու այս ձևն է ընտրվում, եթե չափը բացահայտ չի տրվում)։
width և height հատկանիշների համար որպես չափման ﬕավոր կարելի
է կիրառել.
% - տարրի չափը տրվում է նախասահմանված չափի տոկոսներով,
px
- տարրի չափը տրվում է փիքսելներով (կարելի է նշել նաև CSS-ում
ընդունված չափման այլ ﬕավորներ)։
Դիտարկենք հետևյալ օրինակները.
120
.box1
բլոկի լայնությունը
{
կընդունվի 300 փիքսել,
width: 300px;
իսկ բարձրությունը` ըստ
border: 1px solid red;
բովանդակության
background: #FFE446;
}
.box2
բլոկի լայնությունը կընդունվի
{
300, իսկ բարձրությունը` 600
width: 300px;
փիքսել
height: 600px;
border: 1px solid red;
background: #FFE446;
}
WEB-էջում տարրի տեղակայման ճշգրիտ դիրքը սահմանելու համար
CSS-ը լայն հնարավորություններ է ընձեռում։ Դիրքի սահմանման ռեժիմը
կառավարում է position հատկանիշը, որի օգնությամբ ընտրվում է տարրի
դիրքի հաշվարկման եղանակը։
Դիրքի բացարձակ սահմանման դեպքում position հատկանիշը պետք է
absolute արժեքն ունենա։ Այնուհետև left, right, top և bottom պահեստավոր-
ված բառերի օգնությամբ նշվում են տարրի կոորդինատները՝ հաշվարկ-
ված բրաուզերի պատուհանի եզրերից։ Դիրքի բացարձակ սահմանման
դեպքում տարրը հեռացվում է իր հիﬓական դիրքից և տեղադրվում ըստ
նոր կոորդինատների։ Օրինակ՝
h1
h1 մակարդակի վերնագիրը
{
տեղադրվել է փաստաթղթի
position:absolute;
ձախ եզրից 100px և վերին
top: 50px;
եզրից 50px հեռավորության
left: 100px;
վրա
}
CSS-ի ստորև բերված կոդի արդյունքում կստանանք նկ. 3.6.-ում պատ-
կերվածը (բրաուզերի պատուհանն ընդունվել է որպես կոորդինատների
համակարգ):
Դիրքի հարաբերական սահմանման դեպքում position հատկանիշը պետք
է relative արժեքն ունենա։ Ի տարբերություն դիրքի բացարձակ սահման-
ման՝ տարրի նոր կոորդինատները հաշվարկվում են՝ որպես կոորդինատ-
ների սկզբնակետ ընդունելով նախկին կոորդինատները։
121
Նկ. 3.6. Տարրի տեղադրումը բրաուզերի պատուհանին,
որը բերվել է որպես կոորդինատների համակարգ
պատկերը տեղաշարժվել է իր
#dog
{
նախկին դիրքից 300 փիքսել
position:relative;
ձախ և 100 փիքսել ներքև
left: 300px;
bottom: 100px;
}
#dog
պատկերը տեղաշարժվել է
{
նախկին դիրքից 200 փիքսել
position:relative;
վերև և 100 փիքսել ձախ
top: 200px;
left: 100px;
}
Եթե անհրաժեշտ է փաստաթղթում տարրի դիրքն անշարժացնել այն-
պես, որ անցավազքի ընթացքում չտեղաշարժվի, ապա position հատկանի-
շը պետք է fixed արժեքն ունենա։ Օրինակ՝
h1
պատկերը սևեռվել է
{
փաստաթղթի վերին
position:fixed;
սահմանից 200px և
top: 200px;
ձախ սահմանից 100px
left: 100px;
հեռավորության վրա
}
122
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ Եթե տարրը գերազանցում է նշված չափը, ապա որոշ բրաուզերնե-
րում width և height հատկանիշները կարող են ընդունել auto արժե-
քը։
1. CSS-ում տարրի չափը սահմանելու ի՞նչ ձևեր գիտեք։
2. CSS-ում տարրի դիրքը սահմանելու ի՞նչ եղանակներ գի-
տեք։
3. CSS-ի օգնությամբ ինչպե՞ս կարելի է տարրի դիրքը սևեռել
WEB-էջում։
Լաբորատոր աշխատանք
3.4
Տարրի դիրքի և չափի սահմանում
1. Start գլխավոր ﬔնյուի Programs ենթաﬔնյուի Accessories ենթաﬔնյուի
Notepad հրամանով բացեք համանուն տեքստային խմբագրիչը։
2. Ընտրեք Notepad տեքստային խմբագրիչի ﬔնյուի տողի File ենթաﬔ-
նյուի Open հրամանն ու բացեք ձեր ստեղծած style.css ֆայլը։
3. Ֆայլում ավելացրեք գույնով ընդգծված հրահանգները։
table, td{border: 1px solid green;
}
body{
background-image: url(fon.png);
background-repeat:repeat;
}
table{
width:900px;
background-color:#66CDAA;
margin:auto;
}
td{
vertical-align:top;
}
123
h1{
font-weight: bold;
font-size: 30px;
color: #ffffff;
text-align:center;
}
h2{
font-style: italic;
font-size: 22px;
color: #006400;
}
h3{
font-size: 16px;
color: green;
text-align:center;
}
p,li{
font-size: 20px;
}
img{height:120px;
width:100px;
margin:20px;
float:left;
}
4. Խմբագրիչի ﬔնյուի տողի File ենթաﬔնյուի Save հրամանով պահպա-
նեք խմբագրված փաստաթուղթը։
5. Մտեք որևէ բրաուզերի ﬕջավայր։ Ընտրեք Notepad խմբագրիչի ﬕ-
ջավայրում ձեր ստեղծած Index.html ֆայլն ու մնիկի ձախ սեղմակի
կրկնակի սեղմում կատարելով՝ էկրանին կտեսնեք ստորև բերված
WEB-էջը.
6. Ավարտեք աշխատանքը՝ փակելով տեքստային խմբագրիչն ու բրաու-
զերը։
124
§3.7. ԽՈՐՀՈՒՐԴՆԵՐ WEB-ԿԱՅՔԻ ԿԱՌՈՒՑՎԱԾՔԻ
ԵՎ ՏԵՂԱԿԱՅՄԱՆ ՎԵՐԱԲԵՐՅԱԼ
Կայքի ստեղծման փուլում հնարավոր խնդիրներից խուսափելու համար
խորհուրդ է տրվում.
z WEB-կայքը ստեղծելուց առաջ մտածեք կայքի այցելուների մասին։
Սրանից կախված պետք է որոշել էջերի արտաքին տեսքն ու ին-
ֆորմացիայի տրման ոճը։ Եթե կայքը ձեր ﬔրձավորների համար է
ստեղծվում, այն կարող է լինել պարզ և ուրախ, ինչպես նաև կարող
է անձնական բնույթի ինֆորմացիա ներառել։ Եթե այն գործնական
բնույթ կրող կայք է, ապա կայքում անհրաժեշտ է տեղադրել այնպիսի
հղուﬓեր, որոնք կհետաքրքրեն այցելուներին։
z Այլ անձից փոխառված ինֆորմացիան ձեր կայքում տեղադրելու հա-
մար նախ ստացեք նրա թույլտվությունն ու այդ ինֆորմացիայից օգ-
տվելիս հղում արեք բնօրինակին։
z Կայքն ավելի հարուստ կլինի, եթե թեմային առնչվող արտաքին
հղուﬓեր ունենա։
z Կայքը պետք է այնպես կառուցել, որ այն էջերի ﬕջև հնարավորինս
պարզ կապեր ունենա։ Պետք է հստակ նշել, թե որ հղուﬓերն են նա-
խատեսված կայքի տարածքում տեղաշարժվելու համար և որոնք են
Համացանցի այլ կայքեր տանում։
z Գրաֆիկական և մուլտիﬔդիա ինֆորմացիաները WEB-էջը կարող են
առավել գրավիչ դարձնել, սակայն դրանց քանակը պետք է չափավոր
լինի, քանի որ էջի ծավալի ﬔծացմանը զուգընթաց դանդաղեցվում
է էջի բեռնավորման գործընթացը։ Հիշեք, որ դեռևս Համացանցից
օգտվողների ﬕ մասը Համացանց մտնելու համար ոչ արագագործ
մոդեﬓերից է օգտվում։
z WEB-էջերը Համացանցում տեղադրելուց առաջ պետք է անպայման
թեստավորվի. դիտվի համակարգչի վրա, ստուգվի հղուﬓերի աշ-
խատանքը, տեքստի և գրաֆիկայի տեղաբաշխումը, դիտվի տարբեր
բրաուզերների վրա։ Խնդրեք ձեր ընկերներին՝ օգնել այդ գործում։
z Համացանցում աշխատելիս ﬕ խախտեք էթիկայի ընդունված կա-
նոնները, այլապես կարող եք ոչ ﬕայն կորցնել ձեր կայքն ունենալու
իրավունքը, այլև խնդիրներ ունենալ իրավապահների հետ։
z Կայքի գլխավոր էջում տեղադրեք ձեր էլեկտրոնային հասցեն և այցե-
լուներին խնդրեք ձեզ ուղարկել իրենց կարծիքները. այսպիսով օգ-
տակար խորհուրդներ ստանալու հնարավորություն կունենաք։
z Անընդհատ թարմացրեք ձեր կայքը՝ այցելուներ չկորցնելու համար։
125
Ձեր ստեղծած WEB-կայքը խորհուրդ ենք տալիս պահպանել ստորև բեր-
ված տարածքներից որևէ ﬔկում։
z www.sites.google.com
- Google-ը հնարավորություն է տալիս պարզ
կայքեր ստեղծել և տեղ է տրամադրում ծավալուն կայք տեղակայելու
համար։
z www.geocites.com
- Yahoo-ն հնարավորություն է տալիս Yahoo
GeoCites կայքի օգնությամբ WEB-էջեր ստեղծել։
z www.apple.com/mobileme
- MobileMeMacintosh համակարգիչ կամ
iPhone հեռախոս ունեցողներին հնարավորություն է տալիս ինչպես
WEB-էջեր ստեղծել, այնպես էլ օգտվել ﬕ շարք այլ ծառայություննե-
րից։
z www.ning.com - Ning-ը նախատեսված է ոչ ﬕայն WEB-կայքի, այլև սե-
փական սոցիալական կայք ստեղծելու համար։
z www.narod.yandex.ru - Narod-ը անվճար հարմար գործիքաշար է առա-
ջարկում, ինչը հնարավորություն է տալիս սեփական WEB-կայքում լու-
սանկարչական ալբոﬓեր, անհատական ֆորում և այլ ինտերակտիվ
տարրեր տեղադրել։
ՕԳՏԱԿԱՐ Է ԻՄԱՆԱԼ
¾ WEB-կայքի տեղադրման մասին տեղեկատվություն կարելի է ստանալ
www.hostikus.ru, www.terrafiles.ru, www.hostland.su կայքերում։
1. WEB-կայքի կառուցվածքի մասին ﬕ քանի խորհուրդներ
թվարկեք։
2. WEB-կայքի տեղակայման ﬕ քանի տարածքներ թվարկեք։
126
Բովանդակություն
Ներածություն
3
1. Տվալների հենքեր
4
§1.1. Տվալների հենքի ստեղծում
4
§1.2. Աղուսակների ստեղծում և խմբագրում
8
Լաբորատոր աշխատանք 1.1.Աղուսակի ստեղծում
12
§1.3. Աշխատանք աղուսակի դաշտերի և գրառուﬓերի հետ
14
§1.4. Աղուսակում ինֆորմացիայի որոնուﬓ ու փոխարինումը
16
Լաբորատոր աշխատանք 1.2. Աշխատանք աղուսակների հետ
18
§1.5. Տվալների բազմաղուսակ հենքեր
22
Լաբորատոր աշխատանք 1.3. Կապված աղուսակների ստեղծում
27
§1.6. Հարցուﬓեր
30
Լաբորատոր աշխատանք 1.4.
Կապված աղուսակներին առնչվող հարցուﬓեր
33
§1.7. Ձևեր
37
Լաբորատոր աշխատանք 1.5. Ձևի ստեղծում
42
§1.8. Հաշվետվությունների ստեղծում
45
Լաբորատոր աշխատանք 1.6. Հաշվետվության ստեղծում
49
2. Ծրագրավորման Պասկալ լեզվի հիմունքները
51
§2.1. Ծրագրավորման լեզուներ
51
§2.2. Ծրագրավորման Պասկալ լեզու։ Լեզվի աշխատանքային ﬕջավայրը
53
§2.3. Պասկալ լեզվի տարրերը
58
§2.4. Պասկալ ծրագրի կառուցվածքն ու հիﬓական բաժինները
61
§2.5. Տվալների պարզագույն տիպեր։
Մաթեմատիկական ֆունկցիաներ և արտահայտություններ
63
§2.6. Թվաբանական և տրամաբանական արտահայտություններ
67
§2.7. Մեկնաբանություններ։ Վերագրման օպերատոր։
Ներմուծման հրահանգ
70
§2.8. Արտածման հրահանգ։ Արտածման ձևաչափ
73
§2.9. Գծային ալգորիթﬓերի ծրագրավորում
75
§2.10. Ճյուղավորման գործընթացը ալգորիթﬓերում։
Ճյուղավորման (պայմանի) օպերատոր
79
§2.11. Կրկնության (ցիկլի) օպերատորներ
85
§2.12. Միաչափ զանգվածներ
91
§2.13. Երկչափ զանգվածներ
95
3. Հեռահաղորդակցման տեխնոլոգիաներ
99
§3.1. HTML-հիպերտեքստի նշագրման լեզու
99
§3.2. CSS
- ոճերի կասկադային աղուսակներ
102
Լաբորատոր աշխատանք 3.1. Էջերում ոճերի տեղակայման ﬕջոցները
105
127
§3.3. Գույն և ֆոն
108
Լաբորատոր աշխատանք 3.2. color և background
հատկանիշների կիրառում
110
§3.4. Տեքստի ձևավորում
111
Լաբորատոր աշխատանք 3.3. Տեքստի ձևավորում
114
§3.5. Բլոկային մոդել
116
§3.6. Տարրի չափի ու դիրքի սահմանումը
119
Լաբորատոր աշխատանք 3.4. Տարրի դիրքի և չափի սահմանում
122
§3.7. Խորհուրդներ WEB-կայքի կառուցվածքի և
տեղակայման վերաբերյալ
124
Ս. Ս. ԱՎԵՏԻՍՅԱՆ, Ս. Վ. ԴԱՆԻԵԼՅԱՆ
ԻՆՖՈՐՄԱՏԻԿԱ
12-րդ դասարան
ՀԱՆՐԱԿՐԹԱԿԱՆ ԱՎԱԳ ԴՊՐՈՑԻ
ԸՆԴՀԱՆՈՒՐ ԵՎ ՀՈՒՄԱՆԻՏԱՐ ՀՈՍՔԵՐԻ ՀԱՄԱՐ
Խմբագիր՝ Արտակ Սուրենի Ոսկանյան
Սրբագրիչ՝ Անահիտ Պապան
Ձևավորումը՝ Նվարդ Հայրապետյանի
Շապիկի ձևավորումը՝ Աննա Կարապետյանի
Շարվածքը՝ Ալվարդ Ավետիսյանի
Պատվեր՝ 1148: Տպաքանակ՝ 21135:
Թուղթը՝ օֆսեթ: Չափսը՝ 70x100/16: 8 տպ. մամուլ:
Տառատեսակը՝ GHEA Arpi Sans:
Տպագրված է «Տիգրան Մեծ» հրատարակչություն ՓԲԸ տպարանում